Django入门教程:搭建你的第一个Python网站
开篇:什么是Django?你能用它做什么?

你可能已经听说过 Python 是一门非常受欢迎的编程语言。如果你是个完全零基础的新手,也不用担心,我们从头开始。
那什么是 Django 呢?简单来说,它是 Python 中一个非常强大的“工具包”,专门用来帮我们快速创建自己的网站或者 Web 应用。
你可以把 Django 想象成一个“造房子”的工具箱:
- 里面有钢筋水泥(数据库)
- 有门窗和楼梯(页面内容)
- 还有图纸和施工手册(开发文档)
有了 Django,我们就不用从头做起每一个功能,比如注册、登录、发布文章这些常见的网站功能,Django 已经帮你写好了大部分的代码逻辑。
所以,Django 的最大优点就是:快!稳!强! 不管你是想做一个博客网站、电商系统还是后台管理系统,都可以轻松起步。
环境准备:安装开发环境


在开始写代码之前,我们需要准备好“开发环境”——也就是让你的电脑能够运行 Django 的基本配置。
1. 安装 Python
首先确认你有没有安装好 Python。
📌 小提示:Django 需要 Python 3.8 及以上版本支持。
打开你的命令行工具(Windows 上是 CMD 或 PowerShell,Mac/Linux 是 Terminal),输入:
python --version
如果显示类似 Python 3.10.x 的版本号,恭喜你已经有了 Python!
如果没有安装,请前往 官网下载 最新的稳定版本,并按照提示安装即可。
2. 创建虚拟环境(Virtual Environment)
为了不让全局的 Python 包混在一起,我们会创建一个“虚拟环境”。
在命令行中输入以下命令:
# 创建项目文件夹并进入
mkdir mysite
cd mysite
# 创建虚拟环境(Windows):
python -m venv venv
# Mac/Linux:
python3 -m venv venv
然后激活虚拟环境:
Windows:
venv\Scripts\activateMac/Linux:
source venv/bin/activate
激活后你会看到命令行前出现了 (venv) 字样,表示你现在处于虚拟环境中。
3. 安装 Django
接下来就可以安装 Django 了:
pip install django
安装完成后检查一下版本:
django-admin --version
正常会输出类似 4.2.x 的数字。
核心概念:Django 的三大核心模块

Django 主要有三个部分你需要了解清楚,它们分别是:
✅ 模型(Model)
模型就相当于你的网站的“数据库蓝图”。比如说你要建一个博客网站,你需要知道每篇文章有哪些信息:标题、正文、发布时间等等。
举个例子:你可以把它想象为一张表格,每一列代表不同的信息类型。
# models.py 示例
from django.db import models
class Article(models.Model):
title = models.CharField(max_length=100)
content = models.TextField()
pub_date = models.DateTimeField('发表时间')
def __str__(self):
return self.title
✅ 视图(View)
视图决定你在浏览器里看到的内容。你可以理解为一个“处理请求”的函数或类。
举个例子:当用户访问
/blog/1/,视图就会查出对应的博客文章并返回给用户。
# views.py 示例
from django.shortcuts import render
from .models import Article
def article_detail(request, article_id):
article = Article.objects.get(id=article_id)
return render(request, 'blog/article_detail.html', {'article': article})
✅ 模板(Template)
模板就是网页的样子,是 HTML 加上一点点 Python 动态内容。
想象你写了一个 HTML 文件,但里面可以嵌入动态数据。
例如:article_detail.html 模板如下:
<h1>{{ article.title }}</h1>
<p>{{ article.content }}</p>
<p>发布时间:{{ article.pub_date }}</p>
📌 总结一下三者的关系:
- 用户发送请求 → 路由器找到对应视图
- 视图去模型里取数据
- 模型调用数据库 → 获取结果
- 视图渲染模板,生成 HTML 页面并返回给用户
就像这样一条线串起来。
实战项目:跟着教程搭建一个简单的博客网站

现在我们来一步步完成一个简单的博客网站,目标是实现以下功能:
- 显示所有文章列表
- 查看某一篇文章的详细内容
第一步:创建 Django 项目与应用
在命令行中执行:
# 创建项目
django-admin startproject mysite .
# 创建应用(叫 blog)
python manage.py startapp blog
这时候你会看到项目结构像这样:
mysite/
├── manage.py
├── mysite/
│ ├── __init__.py
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
└── blog/
├── migrations/
├── __init__.py
├── admin.py
├── apps.py
├── models.py
├── tests.py
└── views.py
接下来我们要启用 blog 应用。修改 mysite/settings.py:
找到 INSTALLED_APPS,添加 'blog.apps.BlogConfig' 到列表中:
INSTALLED_APPS = [
...
'blog.apps.BlogConfig',
]
第二步:定义模型(Model)
打开 blog/models.py,将内容改成前面提到的 Article 模型。
保存之后,在命令行运行:
python manage.py makemigrations
python manage.py migrate
这两句话的作用是:根据你写的模型生成数据库表结构。
第三步:添加一些测试文章
Django 提供了一个内置的后台管理系统,我们可以手动添加文章。
在命令行运行:
python manage.py createsuperuser
按提示输入用户名、邮箱、密码。
启动服务器:
python manage.py runserver
在浏览器打开 http://127.0.0.1:8000/admin
使用你刚创建的账号登录后,点击 “Add” 添加几篇文章。
第四步:设置路由(URL)
为了让我们的页面可以被访问到,需要设置 URL 路由规则。
修改 blog/urls.py,如果没有请新建这个文件,内容如下:
from django.urls import path
from . import views
urlpatterns = [
path('', views.article_list, name='article_list'),
path('<int:article_id>/', views.article_detail, name='article_detail'),
]
再修改项目的主路由文件 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')),
]
第五步:编写视图(Views)
回到 blog/views.py,添加两个视图函数:
from django.shortcuts import render
from .models import Article
def article_list(request):
articles = Article.objects.all()
return render(request, 'blog/article_list.html', {'articles': articles})
def article_detail(request, article_id):
article = Article.objects.get(id=article_id)
return render(request, 'blog/article_detail.html', {'article': article})
第六步:创建模板(Templates)
在 blog 文件夹下新建 templates/blog 目录:
blog/
└── templates/
└── blog/
├── article_list.html
└── article_detail.html
article_list.html 示例:
<h1>我的博客</h1>
<ul>
{% for article in articles %}
<li><a href="/blog/{{ article.id }}/">{{ article.title }}</a></li>
{% endfor %}
</ul>
article_detail.html 示例:
<h1>{{ article.title }}</h1>
<p>{{ article.content }}</p>
<p>发布时间:{{ article.pub_date }}</p>
第七步:运行并查看效果!
再次运行服务:
python manage.py runserver
打开 http://127.0.0.1:8000/blog/,你会看到文章列表;点击链接可以看到具体文章内容。
🎉 恭喜你完成了第一个 Django 博客网站!
常见问题解答

❓ 1. 我遇到报错 “no module named django”,怎么办?
确保你是在虚拟环境中安装的 Django:
# 确保你已经激活了虚拟环境
which pip # Mac/Linux 看路径是否带 venv
where pip # Windows
# 再次尝试安装
pip install django
❓ 2. 修改了 model 后为什么没有生效?
记得每次修改完模型都要运行下面两条命令:
python manage.py makemigrations
python manage.py migrate
否则数据库不会自动更新哦。
❓ 3. 打不开网页,显示 404?
请检查 URL 是否正确,以及 urls.py 中的路径匹配是否准确,大小写也要注意。
❓ 4. 为什么我看不到后台管理的 Blog 模块?
因为你还未注册模型。
打开 blog/admin.py,添加如下代码:
from django.contrib import admin
from .models import Article
admin.site.register(Article)
重新登录后台即可看到文章模型。
学习建议:下一步该学什么?
既然你已经掌握了基本知识,接下来可以学习的方向包括:
🔧 1. 使用模板继承优化页面结构
学会使用 {% extends %} 实现多页面复用头部、尾部等部分,避免重复写代码。
🎨 2. 学习 CSS 和前端样式美化页面
推荐结合 Bootstrap 或 Tailwind CSS,让页面看起来更专业。
📩 3. 学习表单操作(Form)
比如如何让用户提交新文章,这是构建交互式网站的基础。
🔐 4. 实现用户登录注册系统
Django 自带了认证模块,能帮助你快速搭建用户体系。
🛠 5. 部署你的网站上线
可以尝试部署到免费平台如 PythonAnywhere、Railway、Render,让你的网站真正可访问。
结语
本教程带着你一步步实现了第一个 Django 网站,虽然只是一个小小的博客,但这正是你成为后端开发者的重要起点。
记住一句话:“写得多,错得多,改得快,学得快。”
保持耐心,不断动手实践,你一定能掌握 Django 的更多高级技能!
如果你喜欢这篇文章,欢迎收藏+关注,我会持续更新更多实用的 Python 教程。🚀

评论 0