โครงการและแอป
จัดโครงสร้างโครงการ Django
โครงการและแอป เป็นบทเรียน Python Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Python Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน
Django คืออะไร
Django คือเฟรมเวิร์กเว็บ Python ที่มีเครื่องมือครบในตัว โดยรวมระบบจัดการการแมปออบเจ็กต์กับฐานข้อมูล เว็บไซต์ผู้ดูแลระบบ ระบบแม่แบบ และเครื่องมืออื่น ๆ ไว้ให้ จึงสามารถสร้างเว็บไซต์ที่มีฟีเจอร์ครบได้อย่างรวดเร็ว ติดตั้งด้วย pip install django
import django
print('Django version:', django.get_version())โปรเจกต์เทียบกับแอป
Django แยกแนวคิดออกเป็นสองอย่าง:
- โปรเจกต์ คือเว็บไซต์ทั้งหมดพร้อมการตั้งค่าของเว็บไซต์
- แอป คือโมดูลที่นำกลับมาใช้ซ้ำได้ภายในโปรเจกต์ เช่น บล็อกหรือร้านค้า
โปรเจกต์หนึ่งประกอบด้วยแอปได้หลายแอป
# project = the site
# app = a feature module within it
print('Project holds many apps')การเริ่มต้นโปรเจกต์
คำสั่ง django-admin startproject mysite จะสร้างโครงสร้างตั้งต้นของไดเรกทอรีโปรเจกต์ใหม่พร้อมไฟล์หลัก
# Terminal:
# django-admin startproject mysite
print('startproject creates the site skeleton')โครงสร้างโปรเจกต์
โปรเจกต์ใหม่ประกอบด้วย manage.py และแพ็กเกจด้านในที่มี settings.py, urls.py, wsgi.py และ asgi.py
# mysite/
# manage.py
# mysite/
# settings.py
# urls.py
# wsgi.py
print('manage.py + inner config package')manage.py
manage.py คือจุดเริ่มต้นสำหรับบรรทัดคำสั่ง คุณใช้ไฟล์นี้เรียกใช้งานต่าง ๆ เช่น เซิร์ฟเวอร์สำหรับการพัฒนาและไมเกรชัน
# python manage.py runserver
# python manage.py migrate
# python manage.py createsuperuser
print('manage.py runs project commands')การสร้างแอป
python manage.py startapp blog จะสร้างโฟลเดอร์แอปใหม่พร้อมโมเดล วิว และไฟล์ผู้ดูแลระบบของแอปเอง
# python manage.py startapp blog
# blog/
# models.py
# views.py
# admin.py
# apps.py
print('startapp scaffolds a feature module')การลงทะเบียนแอป
เพิ่มแอปของคุณลงใน INSTALLED_APPS ใน settings.py เพื่อให้ Django ทราบว่ามีแอปนี้อยู่
# settings.py
# INSTALLED_APPS = [
# 'django.contrib.admin',
# 'blog',
# ]
print('Register apps in INSTALLED_APPS')settings.py
settings.py เก็บการตั้งค่าทั้งหมด ได้แก่ ฐานข้อมูล แอปที่ติดตั้ง โฮสต์ที่อนุญาต ไฟล์คงที่ และคีย์ลับ
# Key settings:
# DATABASES, INSTALLED_APPS,
# ALLOWED_HOSTS, SECRET_KEY, DEBUG
print('settings.py centralizes config')เซิร์ฟเวอร์สำหรับการพัฒนา
python manage.py runserver จะเริ่มเซิร์ฟเวอร์สำหรับการพัฒนาในเครื่อง โดยค่าเริ่มต้นอยู่ที่ http://127.0.0.1:8000
# python manage.py runserver
# -> Starting development server at
# http://127.0.0.1:8000/
print('runserver launches the dev server')การกำหนดค่าเส้นทางเว็บ
urls.py ของโปรเจกต์คือแผนผังเส้นทางเว็บหลัก โดยมักจะรวม include() ของเส้นทางเว็บของแต่ละแอปไว้
# mysite/urls.py
# from django.urls import path, include
# urlpatterns = [
# path('blog/', include('blog.urls')),
# ]
print('Project urls include app urls')แอปนำกลับมาใช้ซ้ำได้
เนื่องจากแอปมีทุกอย่างอยู่ในตัว คุณจึงนำแอปเดียวกันไปใส่ในหลายโปรเจกต์ได้ การออกแบบแบบแยกส่วนนี้คือจุดแข็งสำคัญของ Django
# A well-built 'blog' app can be reused
# across different Django projects
print('Apps promote reuse')ตรวจสอบความเข้าใจอย่างรวดเร็ว
ทดสอบความรู้เกี่ยวกับโครงสร้างโปรเจกต์ของคุณ
สรุปทบทวน
คุณได้เรียนรู้วิธีจัดโครงสร้างโปรเจกต์ Django
- โปรเจกต์ คือเว็บไซต์ ส่วนแอปคือโมดูลฟีเจอร์ที่นำกลับมาใช้ซ้ำได้
startprojectและstartappใช้สร้างโครงสร้างตั้งต้น- ลงทะเบียนแอปใน
INSTALLED_APPS manage.pyใช้เรียกใช้คำสั่งต่าง ๆ เช่นrunserverurls.pyของโปรเจกต์รวมเส้นทางเว็บของแต่ละแอปไว้
คำถามที่พบบ่อย
บทเรียน “โครงการและแอป” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “โครงการและแอป” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Python Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “โครงการและแอป”
จัดโครงสร้างโครงการ Django คุณปฏิบัติ Python Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Python Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Python Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “โครงการและแอป” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Python Academy นี้ได้ไหม
ได้ บทเรียน Python Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- โครงการและแอป
- โมเดลและการย้ายฐานข้อมูล
- วิวและ URL
- ผู้ดูแลระบบ Django