Django是一个基于Python的全栈Web框架,采用MTV模式,提供自带后台、ORM和安全机制,适合快速开发内容型网站。通过创建项目与应用、定义模型、配置URL、编写视图和模板,可构建完整Web应用,推荐结合官方文档动手实践以掌握核心流程。

Django 是一个用 Python 编写的高级 Web 框架,它鼓励快速开发、简洁的设计和代码复用。它的核心理念是“开箱即用”,意味着它自带了处理常见 Web 开发任务的功能,比如用户认证、URL 路由、数据库操作、表单处理等,让你可以专注于写应用逻辑,而不必重复造轮子。
1. Django 是什么?
Django 是一个全栈 Web 框件,适合构建内容驱动型网站,比如博客、电商后台、CMS 系统、社交平台等。它遵循 MTV(Model-Template-View)设计模式:
- Model(模型):定义数据结构,通常对应数据库表。
- Template(模板):负责页面展示,使用 Django 模板语言渲染 HTML。
- View(视图):处理业务逻辑,接收请求并返回响应。
Django 的优势包括:
- 自带管理后台(admin),几行命令就能生成可操作数据库的界面。
- 强大的 ORM(对象关系映射),不用直接写 SQL 就能操作数据库。
- 安全机制完善,如防止 SQL 注入、CSRF 攻击等。
- 社区活跃,文档齐全,第三方包丰富。
2. 如何使用 Django?
下面是一个简单的入门流程,带你创建一个基础项目。
立即学习“Python免费学习笔记(深入)”;
安装 Django
确保已安装 Python(推荐 3.8+),然后在终端运行:
pip install django
创建项目
运行以下命令创建一个新项目:
django-admin startproject mysite
进入项目目录:
cd mysite
运行开发服务器
先迁移数据库(创建必要的表):
python manage.py migrate
启动服务器:
python manage.py runserver
浏览器访问 https://www.php.cn/link/f0838b2ebfc6440a474eabdc326bf31a,看到 Django 欢迎页说明成功。
创建应用
Django 项目由多个“应用”组成,每个应用实现一个功能模块。例如创建一个名为 blog 的应用:
python manage.py startapp blog
然后在 mysite/settings.py 中的 INSTALLED_APPS 添加:
技术上面应用了三层结构,AJAX框架,URL重写等基础的开发。并用了动软的代码生成器及数据访问类,加进了一些自己用到的小功能,算是整理了一些自己的操作类。系统设计上面说不出用什么模式,大体设计是后台分两级分类,设置好一级之后,再设置二级并选择栏目类型,如内容,列表,上传文件,新窗口等。这样就可以生成无限多个二级分类,也就是网站栏目。对于扩展性来说,如果有新的需求可以直接加一个栏目类型并新加功能操作
'blog.apps.BlogConfig'
定义模型(Model)
在 blog/models.py 中定义一个文章模型:
from django.db import models
class Post(models.Model):
title = models.CharField(max_length=100)
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
注册后台管理
在 blog/admin.py 中注册模型:
from django.contrib import admin from .models import Post admin.site.register(Post)
创建管理员账号:
python manage.py createsuperuser
登录 /admin,就可以添加和管理文章了。
配置 URL 和视图
在 blog/views.py 写一个视图函数:
from django.shortcuts import render
from .models import Post
def post_list(request):
posts = Post.objects.all()
return render(request, 'post_list.html', {'posts': posts})
创建模板目录 blog/templates/post_list.html:
文章列表
{% for post in posts %}{{ post.title }}
{{ post.content|truncatewords:30 }}
{% endfor %}
配置 URL,在项目根目录创建 blog/urls.py:
from django.urls import path
from . import views
urlpatterns = [
path('', views.post_list, name='post_list'),
]
在主项目的 mysite/urls.py 中包含它:
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('admin/', admin.site.urls),
path('blog/', include('blog.urls')),
]
再次访问 /blog,就能看到文章列表了。
基本上就这些。Django 的结构清晰,功能强大,适合从原型到上线的完整开发周期。不复杂但容易忽略细节,建议边学边动手。官方文档是最好的学习资源,跟着教程走一遍会理解更深。










