วันเสาร์ที่ 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 ทั้งของโปรเจคหรือแอพและสถานะของไฟล์นั้น

เล่นสนุกไปกับ API
    ต้องบอกว่าในส่วนนี้ค่อนข้างยาวมากเลย โดยตรงนี้นั้นจะเป็นการรันคำสั่งที่เกี่ยวกับการเพิ่มๆลบๆ เรียกดูข้อมูลใน database ผ่านทาง shell ของ django ซึ่งก็คือ command line นั้นแหละ ฮ่าๆ จะขอสรุปสั้นๆเฉพาะคำสั่งที่สำคัญแล้วกันนะ เอาล่ะเริ่มด้วยการเปิด shell ก่อนเลยด้วยคำสั่ง

    python3 manage.py shell

    สรุปคำสั่งสำคัญๆที่ tutorial ใช้เล่นใน shell
  • from polls.models import Question, Choice  << ทำการ import Question กับ Choice เข้ามาก่อน
  • from django.utils import timezone  << import timezone ด้วย
  • q = Question(question_text="What's new?", pub_date=timezone.now())  << สร้าง Question แล้วเก็บลงตัวแปร q
  • q.save()  << เซฟข้อมูลในตัวแปร q ตะกี้ลง database
  • Question.objects.all()  << เรียกดูคำถามทั้งหมดใน database
  • q = Question.objects.get(pk=1)  << ดึงคำถามที่มี primary key(หรือ id) เท่ากับ 1 มาเก็บไว้ในตัวแปร q
  • q.choice_set.create(choice_text='Not much', votes=0)  << สร้างช้อยส์ให้คำถาม q
  • q.choice_set.all()  << เรียกดูช้อยส์ทั้งหมดของคำถาม q
  • q.choice_set.count()  << เรียกดูจำนวนช้อยส์ของคำถาม q
คำสั่งอื่นๆสามารถเข้าไปดูได้ที่ >> https://docs.djangoproject.com/en/1.11/intro/tutorial02/#playing-with-the-api

เริ่มต้นกับ Django Admin
    หน้า admin จะเป็นหน้าที่ช่วยจัดการข้อมูลต่างๆได้ง่ายและสะดวกขึ้นมากเลย เพราะฉนั้นเรามาเริ่มต้นใช้งานเจ้าหน้า Admin กันดีกว่า ขั้นตอนก็คือสร้าง superuser ขึ้นมาก่อนโดยรันคำสั่ง

    python3 manage.py createsuperuser

    จากนั้นก็ทำการกรอก username email password ไปให้เรียบร้อย จากนั้นก็ทำการรัน server แล้วเข้าไปที่ http://localhost:8000/admin/ จะพบกับหน้า login หลังจากทำการ login เสร็จก็จะพบกับหน้านี้


    ซึ่งตอนนี้ยังทำได้แค่ดู user ดังนั้นเราจึงต้องไปแก้ไขไฟล์ admin.py ก่อนตามนี้


    เมื่อกลับเข้ามาดูที่หน้า admin อีกทีก็จะเห็นว่ามีส่วนของ Questions เพิ่มขึ้น ซึ่งเราสามารถจะเข้าไปเพิ่มลบหรือแก้ไขคำถามในนั้นได้เลย





~ เป็นอันจบ django tutorial ที่ 2 ~

ไม่มีความคิดเห็น:

แสดงความคิดเห็น