Django คู่มือเริ่มต้น: จากพื้นฐานสู่การสร้างโปรเจกต์ที่ซับซ้อน
Django คู่มือเริ่มต้น: จากพื้นฐานสู่การสร้างโปรเจกต์ที่ซับซ้อน
Django เป็นเฟรมเวิร์ก Python ที่ใช้สำหรับการพัฒนาแอปพลิเคชันเว็บที่มีประสิทธิภาพ ชัดเจน และสามารถขยายได้อย่างรวดเร็ว บทความนี้จะพาคุณเริ่มต้นจากความรู้พื้นฐานเกี่ยวกับ Django เรียนรู้วิธีการสร้างโปรเจกต์ที่ซับซ้อน เพื่อช่วยให้คุณพัฒนาทักษะของคุณในระหว่างการพัฒนา
หนึ่ง, แนะนำ Django
Django เป็นเฟรมเวิร์กที่ "มีทุกอย่างพร้อม" ซึ่งหมายความว่ามันมีฟีเจอร์มากมายที่สามารถใช้งานได้ทันที ช่วยให้นักพัฒนาสามารถตั้งค่าและเริ่มต้นแอปพลิเคชันเว็บได้อย่างรวดเร็ว ข้อดีของ Django ได้แก่:
- การพัฒนาอย่างรวดเร็ว: มีฟีเจอร์มากมายและเครื่องมือที่หลากหลาย ช่วยให้นักพัฒนาลดงานที่ทำซ้ำ
- ความปลอดภัย: มีฟีเจอร์ด้านความปลอดภัยในตัวหลายอย่าง ปกป้องแอปพลิเคชันเว็บจากการโจมตีทั่วไป
- ความสามารถในการขยาย: เหมาะสำหรับแอปพลิเคชันทุกขนาด ตั้งแต่เว็บไซต์ขนาดเล็กไปจนถึงระบบที่ซับซ้อนขนาดใหญ่
สอง, การตั้งค่าแวดล้อม
-
ติดตั้ง Python และ pip: Django เป็นเฟรมเวิร์กที่ใช้ Python ดังนั้นคุณต้องมั่นใจว่าคอมพิวเตอร์ของคุณติดตั้ง Python (แนะนำเวอร์ชัน 3.6 ขึ้นไป) สามารถตรวจสอบว่า Python ติดตั้งสำเร็จหรือไม่ด้วยคำสั่งต่อไปนี้:
python --versionหากยังไม่ได้ติดตั้ง Python กรุณาไปที่ เว็บไซต์ Python เพื่อดาวน์โหลดและติดตั้ง
-
ติดตั้ง Django: ใช้ pip ในการติดตั้ง Django:
pip install Djangoเมื่อติดตั้งเสร็จแล้ว คุณสามารถรันคำสั่งต่อไปนี้เพื่อตรวจสอบว่า Django ติดตั้งสำเร็จหรือไม่:
python -m django --version
สาม, สร้างโปรเจกต์ Django แรก
-
สร้างโปรเจกต์: ใช้เครื่องมือบรรทัดคำสั่งที่ Django ให้มาในการสร้างโปรเจกต์ใหม่ เราจะสร้างโปรเจกต์ชื่อ
myproject:django-admin startproject myprojectเข้าสู่ไดเรกทอรีโปรเจกต์:
cd myproject -
เริ่มเซิร์ฟเวอร์พัฒนา: รันคำสั่งต่อไปนี้เพื่อเริ่มเซิร์ฟเวอร์พัฒนาของ Django:
python manage.py runserverเปิดเบราว์เซอร์และเข้าถึง
http://127.0.0.1:8000/คุณควรเห็นหน้าแสดงความยินดีของ Django
สี่, สร้างแอปพลิเคชัน
ใน Django โปรเจกต์ประกอบด้วยหลายแอปพลิเคชัน แต่ละแอปพลิเคชันเป็นโมดูลฟังก์ชันอิสระ
-
สร้างแอปพลิเคชัน: ในไดเรกทอรีโปรเจกต์ รันคำสั่งต่อไปนี้เพื่อสร้างแอปพลิเคชันใหม่ เช่นชื่อ
blog:python manage.py startapp blog -
ลงทะเบียนแอปพลิเคชัน: ในไฟล์
settings.pyของโปรเจกต์ ให้เพิ่มแอปพลิเคชันที่สร้างใหม่ลงในรายการINSTALLED_APPS:INSTALLED_APPS = [ ... 'blog', ]
ห้า, สร้างโมเดลพื้นฐาน
โมเดลฐานข้อมูลเป็นโครงสร้างข้อมูลใน Django ซึ่งมักจะเชื่อมโยงกับฟังก์ชันของแอปพลิเคชัน เราจะใช้แอปพลิเคชันบล็อกง่ายๆ เป็นตัวอย่าง
-
กำหนดโมเดล: ในไฟล์
blog/models.pyกำหนดโมเดลของเรา:from django.db import models class Post(models.Model): title = models.CharField(max_length=200) content = models.TextField() created_at = models.DateTimeField(auto_now_add=True) def __str__(self): return self.title -
ย้ายฐานข้อมูล: รันคำสั่งต่อไปนี้ในเทอร์มินัลเพื่อสร้างตารางฐานข้อมูล:
python manage.py makemigrations python manage.py migrate
หก, สร้างมุมมองและเส้นทาง URL
มุมมองเป็นฟังก์ชันที่จัดการคำขอและส่งคืนการตอบสนอง เส้นทาง URL จะกำหนดคำขอไปยังมุมมองที่เหมาะสม
-
สร้างมุมมอง: ในไฟล์
blog/views.pyเพิ่มมุมมองง่ายๆ:from django.shortcuts import render from .models import Post def post_list(request): posts = Post.objects.all() return render(request, 'blog/post_list.html', {'posts': posts}) -
กำหนดเส้นทาง URL: ในไดเรกทอรี
blogสร้างไฟล์urls.pyและกำหนดเส้นทาง URL:from django.urls import path from . import views urlpatterns = [ path('', views.post_list, name='post_list'), ]จากนั้นในไฟล์
urls.pyของโปรเจกต์หลักให้รวม URL ของแอปนี้:from django.contrib import admin from django.urls import include, path urlpatterns = [ path('admin/', admin.site.urls), path('', include('blog.urls')), ]
เจ็ด, สร้างเทมเพลต
เทมเพลตคือไฟล์ HTML ที่ใช้ในการนำเสนอข้อมูล ในไดเรกทอรี blog สร้างโฟลเดอร์ชื่อ templates/blog และสร้างไฟล์ post_list.html ภายในนั้น
บทความบล็อก
# บทความบล็อก
{% for post in posts %}
- {{ post.title }} ({{ post.created_at }})
{% endfor %}
แปด, สรุป
Django เป็นเฟรมเวิร์กการพัฒนาเว็บที่ทรงพลัง เหมาะสำหรับการสร้างแอปพลิเคชันเว็บที่มีประสิทธิภาพอย่างรวดเร็ว บทความนี้ได้แนะนำการตั้งค่าแวดล้อม การสร้างโปรเจกต์ แอปพลิเคชัน โมเดล มุมมอง และเทมเพลตในกระบวนการพื้นฐาน เมื่อคุณเรียนรู้ลึกซึ้งขึ้น คุณสามารถลองใช้ฟีเจอร์ Django อื่นๆ เช่น การรับรองผู้ใช้ RESTful API และการรวมกับเฟรมเวิร์กด้านหน้า (เช่น React)
ดำเนินการสร้างโปรเจกต์ของคุณต่อไป ท้าทายฟังก์ชันที่ซับซ้อน และพัฒนาทักษะการพัฒนาของคุณ!





