สำหรับผู้ที่เข้ามาอ่านบทความนี้เป็นครั้งแรก และต้องการทดลองทำตามขอแนะนำให้ไปอ่านในตอนที่ 1 และ 2 ตามลำดับมาก่อน ในกรณีที่ไม่ได้ติดตั้งโปรแกรมใด ๆ ไว้ในเครื่องคอมพิวเตอร์มาเลยขอให้อ่านและทำตามตั้งแต่การติดตั้งภาษาไพธอนก่อนนะครับ
ในตอนที่ 3 จะแสดงขั้นตอนการสร้างโมเดล ซึ่งคำว่า "โมเดล" มันก็คือ Database table ที่ใช้สำหรับเก็บข้อมูล หรือ business logic ขององค์กรหรือหน่วยงานที่ต้องจัดทำระบบสารสนเทศ หรือฐานข้อมูล แล้วจะมีการสร้างฟอร์มสำหรับป้อนข้อมูล แก้ไข ลบ และแสดง หรือเรียกว่า CRUD : Create, Read, Update และ Delete ข้อมูลนั่นเอง มันเป็นฟังก์ชันพื้นฐานของการพัฒนาระบบสารสนเทศ ดังนั้น Django จะไม่ให้โปรแกรมเมอร์ต้องเขียนคำสั่งซ้ำแล้วซ้ำอีก เพียงเราสร้าง model เสร็จสั่งให้ syncdb มันจะสร้าง Database table มาให้พร้อมกับ CRUD สำเร็จทีเดียวเลย มาดูขั้นตอนการทำกันนะครับ
เพื่อให้เข้าใจได้ยิ่งขึ้นจึงขอยกตัวอย่าง model จาก northwind ซึ่งเป็นโปรแกรมที่เป็นตัวอย่างของ MS Access ที่คุ้นเคยกันดี ดู ER-Diagram จากภาพด้านล่างนี้ก่อนครับ
.jpg)
จะขอเริ่มสร้าง model จาก entity Suppliers เป็นตัวอย่างซัก 1 ตัวอย่างก่อน มีขั้นตอนดังนี้
- c:\repository\django\bin\bmis>manage.py startapp northwind
- จะไม่เกิดอะไรขึ้นใน command line แต่เมื่อ explore ดูจะมีโฟลเดอร์ northwind เพิ่มขึ้นมาและมีไฟล์ภายใน northwind จำนวน 4 ไฟล์ได้แก่ __init__.py, models.py, test.py และ views.py ไฟล์ชื่อ models.py นั้นใช้สำหรับสร้าง model ที่ได้กล่าวในข้างต้นไปแล้ว ส่วนไฟล์อื่น ๆ จะได้กล่าวถึงในตอนต่อไป
- เปิดไฟล์ models.py ที่อยู่ในโฟลเดอร์ northwind ด้วย editor ใด ๆ ก็ได้
- พิมพ์คำสั่งเพื่อสร้าง model ดังนี้
from django.db import models
|
ข้อควรระวัง ภาษาไธอนจะใช้การย่อหน้าแทนใช้บล็อก { และ } ในภาษาซีนะครับเพราะฉะนั้นเมื่อพิมพ์อักษร : แล้ว จะต้องกดปุ่ม Tab เสมอ แต่ถ้า IDE เช่น IDLE จะจัดย่อหน้าให้อัตโนมัติ
ถัดจากนั้นให้ Save
ขั้นตอนถัดไปเป็นการ setting ให้ Django รู้จัก App ที่ชื่อ northwind เขาเรียกกันว่าการ install app (เริ่มสับสนแล้วนะครับชื่อ northwind เป็นทั้งชื่อ database และ application) มีขั้นตอน ดังนี้
- เปิดไฟล์ settings.py
- ดูที่ส่วนของคำว่า
INSTALLED_APPS = (
'django.contrib.auth',
................
:
'django.contrib.admin', #ให้พิมพ์เพิ่มไปหลังบรรทัดนี้
'bmis.northwind', #อย่าลืมต้องมีอัญประกาศเปิดปิดและมีเครื่องหมายจุลภาคหลังสุดด้วย
- เสร็จแล้ว Save
ขั้นตอนต่อไปเป็นการ syncdb เพื่อให้ django สร้างตารางข้อมูล Suppliers และสร้างหน้าง Interface มีขั้นตอนดังนี้
- c:\repository\django\bin\bmis>manage.py syncdb
ขั้นตอนต่อไปเป็นการสร้างไฟล์ admin.py เพื่อ register ให้ admin มองเห็น App หรือ CRUD ของ Suppliers มีขั้นตอนดังนี้
- Start > Programs > Python 2.7 > IDLE (python GUI)
- File > New window
- พิมพ์คำสั่งดังนี้
from django.contrib import adminfrom northwind.models import *admin.site.register(Suppliers) # Suppliers ก็คือชื่อคลาสที่อยู่ใน models.py ที่สร้างขึ้นมาก่อนหน้านี้
|
ให้ Save ตั้งชื่อไฟล์ว่า admin.py ให้เก็บอยู่ในโฟลเดอร์ northwind ถ้าตั้งชื่อเป็นอย่างอื่นจะเกิดผิดพลาดได้
เป็นอันเสร็จพิธีการทั้งหมด
ต่อไปเป็นการทดลองผลการทำงานของโปรแกรม เหมือน ๆ เดิม คือให้ runserver ดังนี้
- c:\repository\django\bin\bmis>manage.py runserver (คำสั่งนี้ต้องจำให้ขึ้นใจเลยครับ เพราะว่าเมื่อทำเสร็จแล้วต้องทดลองด้วยวิธีนี้ตลอดเวลา)
- เปิด Browser ไปที่ 127.0.0.1:8000/admin/
- ล็อกอินเป็นชื่อที่ได้ป้อนเอาไว้ตอนคำสั่ง syncdb มีการตอบ yes และมีชื่อ username และ password ในตอนที่ 2 นะครับที่ได้เขียนบอกว่า ต้องจำให้ได้
- เมื่อป้อน username และ password แล้วจะได้ผลออกมาดังภาพ ด้านล่างนี้

ทดลองคลิกที่ link add ของ Sีupplierss จะมีฟอร์มให้สวย ๆ ดังภาพ
