วันเสาร์ที่ 29 เมษายน พ.ศ. 2560

สรุปสั้น Django Tutorial #2

ลิงค์ >> https://docs.djangoproject.com/en/1.11/intro/tutorial02/

ทำการสร้าง Model
    เราจะทำการสร้างโมเดลขึ้นมาเพื่อใช้ในการเก็บข้อมูลเข้าสู่ database กันนะ     โดยเราจะสร้าง class ขึ้นมาสอง class ด้วยกัน คือ question และก็ choice


Activating Model
    ในตอนนี้ django ยังไม่รู้จักแอพ polls ของเรา ดังนั้นเราจะต้องไปแก้ไขไฟล์ setting.py เพื่อให้ django ได้รู้จักแอพของเราซะก่อน ตามนี้


    หลังจากนั้นเราก็ทำการรันคำสั่งต่อไป คือ

    python3 manage.py makemigrations polls

    เพื่อเป็นการบอก Django ให้รู้ว่าเราได้ทําการเปลี่ยนแปลงแก้ไข model ซึ่งสิ่งที่เปลี่ยนแปลงแก้ไขนั้นก็จะถูกเก็บไว้ในรูปแบบ migration

Note : Migration คือ ตัวช่วยในการจัดการและแก้ไขข้อมูล database ของ model

    คำส้่งถัดมาที่ควรรันหลังจากทำการ migration นั้นก็คือ

    python3 manage.py migrate

    เป็นคำสั่งที่ใช้สร้าง model table และยืนยันการเปลี่ยนแปลงของ model ทั้งหมดลงใน database

Note : คำสั่งอื่นๆที่เกี่ยวกับ migration

  • sqlmigrate เป็นคำสั่งที่ใช้แสดงผล SQL statements ของ migrations ออกมา
  • showmigrations  เป็นคำสั่งแสดงไฟล์ migrations ทั้งของโปรเจคหรือแอพและสถานะของไฟล์นั้น

สรุปสั้น Django Tutorial #1

ลิงค์ >> https://docs.djangoproject.com/en/1.11/intro/tutorial01/


คำสั่งสร้างโปรเจค
    เปิด terminal ขึ้นมาจากนั้นก็ใช้คำสั่ง cd ไปยังไดเรคทอรี่ที่เราาต้องการสร้างโปรเจค แล้วจึงรันคำสั่งด้านล่างนี้ลงไป (mysite นี่คือชื่อโปรเจคนะ)

    django-admin startproject mysite

    ใน tutorial นั้นจะมีการสร้างโปรเจคที่ชื่อว่า mysite ขึ้นมา เมื่อสร้างโปรเจคเสร็จแล้วก็จะได้ไฟล์และโฟลเดอร์มาตามนี้


    ขออธิบายคร่าวๆตามที่เข้าใจตามนี้เลยนะ
  • โฟลเดอร์ mysite ด้านบนนั้นจะเป็นตัว container ของโปรเจคไว้เก็บไฟล์ต่างๆไว้ ชื่อโฟลเดอร์อันนี้สามารถเปลี่ยนได้ตามใจชอบ
  • manage.py อันนี้น่าจะเรียกได้ว่าเป็นศูนย์รวม command ซึ่งเวลาเราจะใช้คำสั่งของ django ส่วนใหญ่ก็จะมีการเรียกใช้เจ้าตัวนี้ด้วย
  • โฟลเดอร์ mysite ด้านในนั้นจะเป็นไดเรคทอรี่ Python Packege ของ project ซึ่งชื่อของโฟลเดอร์นี้จะมีการนำไปเรียกใช้งานหลายๆอย่าง ดังนั้นจึงไม่ควรไปแก้ชื่อมันนะ
  • __init__.py เป็นไฟล์เปล่า ใช้ระบุตัวไดเรคทอรี่ Python Package
  • setting.py เป็นไฟล์ที่จะเก็บการตั้งค่าต่างๆของโปรเจคไว้
  • url.py ตัวนี้จะเป็นตัวที่ใช้ในการประกาศ url เพื่อเชื่อมโยงหน้าต่างๆของโปรเจคเข้าด้วยกัน
  • wsgi.py อันนี้ไม่เข้าใจจริงๆ ต้องขออภัยด้วย

วันศุกร์ที่ 28 เมษายน พ.ศ. 2560

ทำความรู้จักกับ Django Framework

Django Framework นั้นคืออะไร?
    Django(อ่านว่า จังโก้) ในที่นี้ไม่ใช่หนังบู้คาวบอยแต่อย่างใด แต่มันคือชุดเครื่องมือหรือ Framework ตัวนึงที่ใช้สำหรับการพัฒนาเว็บไซต์ด้วยภาษา Python นั่นเอง
    ซึ่งนอกจากเจ้า Django นี้ก็ยังมี Framework ตัวอื่นๆที่ใช้ภาษา Python ในการพัฒนาเว็บไซต์อีกมากมาย แต่ในทีนี้เราจะใช้ Django นี้กัน



เริ่มต้นด้วยการติดตั้ง Django
    เปิด Terminal ขึ้นมาแล้วรันคำสั่งตามนี้ไปได้เลย

    sudo apt-get update

    sudo apt-get install python3-pip

    sudo pip3 install --upgrade pip

    sudo pip3 install django

    python3 -m django --version
    (อันนี้เป็นคำสั่งเช็คเวอร์ชั่น ซึ่งเวอร์ชั่น ณ ตอนเขียนบทความนี้คือ 1.11)


ในบทความต่อๆไปก็จะเป็นการสรุปเนื้อหาของ Django Tutorial กันนะ

วันอังคารที่ 18 เมษายน พ.ศ. 2560

CSV File กับการเก็บข้อมูลจากเว็บลงฐานข้อมูล

    จากบทความที่แล้วได้อธิบายถึง Dynamic Web เอาไว้ว่า มักจะมีการนำฐานข้อมูลมาเพื่อใช้บันทึกข้อมูลจากเว็บลงไปหรือไม่ก็ดึงข้อมูลออกมาใช้ เพราะงั้นในบทความนี้เราก็จะมาทำเว็บที่มีการใช้ฐานข้อมูลกัน ซึ่งชนิดของไฟล์ที่เราจะใช้สำหรับเก็บข้อมูลนั้นมีชื่อว่า "CSV"
    ทีนี้เรามาทำความรู้จักเจ้า CSV File นี้กันก่อนนะ

ไฟล์ CSV คืออะไร?
    CSV นั้นย่อมาจาก Comma Separated Value เป็นไฟล์ข้อความประเภทหนึ่งที่ใช้สำหรับเก็บข้อมูลในรูปแบบตาราง จะใช้เครื่องหมายจุลภาค หรือคอมม่า (,) เป็นตัวแบ่งแต่ละคอลัมน์  ซึ่งโดยปกติแล้วเราสามารถบันทึกไฟล์จาก Microsoft Excel ออกมาเป็น CSV ไฟล์ได้โดยตรง หรือ อาจได้ไฟล์ CSV จากการ export ไฟล์จากระบบฐานข้อมูลอื่นๆก็ได้

จุดเด่นของไฟล์ CSV File
  • รองรับการใช้งานกับโปรแกรมฐานข้อมูลต่างๆ รวมทั้ง Microsoft Excel
  • รองรับการเปิดไฟล์ด้วยโปรแกรม Text Editor ต่างๆ รวมทั้ง Microsoft Word
  • ไฟล์ที่ได้มีขนาดเล็กมาก

(ขอบคุณข้อมูลและภาพจาก : http://www.technointrend.com/csv-file/)


สร้างเว็บเพจแบบสำรวจจำนวนคนที่เกิดในแต่ละวัน
    เอาล่ะ ทีนี้เราก็จะมาเริ่มสร้างหน้าเว็บเพจที่มีการใช้ CSV File ในการเก็บข้อมูลกัน โดยเว็บเพจง่ายๆที่เราจะสร้างก็คือ เว็บเพจแบบสำรวจจำนวนคนที่เกิดในแต่ละวัน
    และนี่คือผลลัพธ์ที่ได้...

วันอาทิตย์ที่ 16 เมษายน พ.ศ. 2560

Python กับการจำลองสร้าง Server อย่างง่าย(ตอนที่ 2)

ประเภทของ Webpage
    ก่อนจะเข้าเรื่อง Server ของตอนนี้ เราจะขอพูดถึงประเภทของ Webpage ก่อนนะ โดยเจ้า webpage จะแบ่งออกเป็นสองประเภทด้วยกันก็คือ
    - Static Webpage หรือชื่อไทยๆว่า เว็บเพจสถิต  เป็นเว็บเพจที่มีรูปแบบการนำเสนอที่ตายตัว ข้อมูลจะไม่เปลี่ยนแปลงจนกว่าผู้ที่สร้างเว็บจะอัพโหลดข้อมูลใหม่เข้าไปเอง ซึ่งหน้าเว็บไอดอลที่เขียนไปก่อนหน้านี้ก็จัดอยู่ในประเภทนี้ด้วย
    - Dynamic Webpage หรือ เว็บเพจพลวัต อันนี้จะเป็นหน้าเว็บที่จะตอบสนองกับผู้ใช้ได้ หรือสามารถเปลี่ยนแปลงข้อมูลเองได้ โดยไม่ต้องมานั่งเขียนแต่ละหน้าเว็บเพจใหม่เอง ซึ่งก็จะมีการนำภาษาอื่นๆเข้ามาช่วยในการเขียนด้วย เช่น PHP, ASP.net, JAVA,Python บลาๆๆๆ และก็มักจะมีการนำฐานข้อมูลมาเพื่อใช้บันทึกข้อมูลจากเว็บลงไปหรือไม่ก็ดึงข้อมูลออกมาใช้กับเว็บอีกด้วยนะ

    และหลังจากที่เคยสร้าง Static Webpage ไปแล้ว ในบทความนี้เราก็จะมาสร้าง Dynamic Webpage อย่างง๊ายง่ายด้วย Python CGI กัน ซึ่งเว็บที่จะทำนั่นก็คือเว็บ เครื่องคิดเลขอย่างง่าย นั่นเอง!

วันเสาร์ที่ 1 เมษายน พ.ศ. 2560

Python กับการจำลองสร้าง Server อย่างง่าย(ตอนที่ 1)

    เกริ่นก่อนนะ หลายคนน่าจะรู้ Server กันอยู่แล้ว หรือถ้าไม่รู้จักก็จะขอสรุปสั้นๆเลยแล้วกันว่า Server นั้นก็คือ "ส่วนที่เป็นผู้ให้บริการ"
    แล้วให้บริการใครล่ะ? แน่นอนว่าเมื่อมีผู้ให้บริการก็ต้องมีผู้ใช้บริการสิ ซึ่งเราจะเรียกส่วนที่เป็นผู้ใช้บริการว่า "Client"

ถ้าอยากรู้เพิ่มเติมก็ขอแนะนำว่า google ช่วยท่านได้


    เอาล่ะเข้าเรื่องเลย บทความนี้เราจะมาพูดถึงการใช้คำสั่ง Python เพื่อเปิด Server อย่างง่ายกันนะ โดยเริ่มจาก เปิด Terminal ขึ้นมาเลย แล้วพิมพ์คำสั่งลงไปว่า