>> เนื้อหาส่วนนี้เป็นส่วนหนึ่งของวิชา [[:204223-52|Practicum in Computer Engineering]] ====== การสร้างโมเดล ====== เราจะสร้างโมเดล ''Equipment'' เพื่อเก็บเครื่องใช้ไฟฟ้าที่เราจะควบคุม สร้างแฟ้ม ''crtl/models.py'' ดังด้านล่าง # _*_ encoding: utf-8 _*_ from django.db import models class Equipment(models.Model): name = models.CharField(max_length=100, verbose_name='ชื่อเครื่องใช้ไฟฟ้า') is_on = models.BooleanField(verbose_name='เปิดอยู่') def __unicode__(self): return self.name เราจะต้องเรียก ./manage.py syncdb หรือ python manage.py syncdb เพื่อให้ Django สร้างตารางในฐานข้อมูลสำหรับเก็บโมเดลให้กับเรา สังเกตว่าคำสั่งดังกล่าวจะสร้างตารางชื่อ ''ctrl_equipment'' ให้กับเรา ====== การใช้ admin อัตโนมัติ ====== เราจะใช้โปรแกรม admin อัตโนมัติ ของ django เพื่อดูวัตถุและในโมเดลของเรา ก่อนจะใช้ต้องจัดการสองเรื่องด้านล่าง * แก้แฟ้ม ''urls.py'' โดยเอาคอมเมนต์ในบรรทัด # Uncomment the next two lines to enable the admin: from django.contrib import admin admin.autodiscover() และบรรทัด # Uncomment the next line to enable the admin: (r'^admin/', include(admin.site.urls)), ออก * ในแฟ้ม ''settings.py'' เพิ่ม ''django.contrib.admin'' เข้าไปใน ''INSTALLED_APPS'' จากนั้นสั่ง ./manage.py syncdb'' เพื่อสร้างตารางสำหรับ admin * เราจะต้องบอกระบบ admin ว่าให้จัดการโมเดล ''Equipment'' ด้วย โดยการ register เข้ากับระบบ admin ให้เพิ่มแฟ้ม ''admin.py'' ในโมดูล ''ctrl'' ที่เราสร้างไว้ (เพิ่มในไดเร็กทอรี ''ctrl/'') ดังด้านล่าง from django.contrib import admin from models import Equipment admin.site.register(Equipment) สังเกตว่าเรา register โดยเรียก ''admin.site.register(Equipment)'' ถ้าเราต้องการจัดการกับโมเดลอื่น ๆ ก็สามารถ register ใน admin.py ได้ในลักษณะเดียวกัน ====== เอกสารจากเว็บของ Django ====== * [[http://docs.djangoproject.com/en/dev/intro/tutorial01/#intro-tutorial01|Tutorial]] * [[http://docs.djangoproject.com/en/dev/topics/db/models/#topics-db-models|การใช้งานโมเดล]] * [[http://docs.djangoproject.com/en/dev/ref/models/fields/#ref-models-fields|ประเภทของฟิลด์ต่าง ๆ]] * [[http://docs.djangoproject.com/en/dev/ref/contrib/admin/#ref-contrib-admin|เอกสารอ้างอิงของ admin]]