====== 第三十六章:Django Web开发 ====== ===== 本章目标 ===== 完成本章学习后,你将能够: * 创建Django项目 * 定义模型和视图 * 使用Admin后台 * 开发完整应用 ===== 快速开始 ===== ```bash # 安装 pip install django # 创建项目 django-admin startproject mysite # 创建应用 python manage.py startapp polls ``` ===== 模型定义 ===== # polls/models.py from django.db import models class Question(models.Model): question_text = models.CharField(max_length=200) pub_date = models.DateTimeField('date published') def __str__(self): return self.question_text class Choice(models.Model): question = models.ForeignKey(Question, on_delete=models.CASCADE) choice_text = models.CharField(max_length=200) votes = models.IntegerField(default=0) ===== 视图和URL ===== # polls/views.py from django.http import HttpResponse from django.shortcuts import render, get_object_or_404 from .models import Question def index(request): latest = Question.objects.order_by('-pub_date')[:5] return render(request, 'polls/index.html', {'latest': latest}) def detail(request, question_id): question = get_object_or_404(Question, pk=question_id) return render(request, 'polls/detail.html', {'question': question}) # polls/urls.py from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), path('/', views.detail, name='detail'), ] ===== 本章练习 ===== 1. 创建完整的Django应用 2. 使用Django REST Framework 3. 部署Django项目 下一章:[[python_course:chapter37|第三十七章:网络爬虫实战]]