Django入门教程:搭建你的第一个Python网站
欢迎来到Django的奇妙世界!如果你是零基础的编程小白,不要担心,本篇教程将从头开始,带你一步步完成一个完整的网站项目。我们将使用Python语言 + Django框架来实现。整个过程通俗易懂、图文并茂,并且每一步都有实际代码示例。
准备好了吗?我们马上出发!
一、开篇:什么是Django?它能用来做什么?
简单解释一下:
Django 是一个用 Python 编写的开源 Web 框架(Framework),专门用于快速开发动态网站和后端服务。
你可以把它想象成一个“积木盒子”,里面已经有盖房子需要的各种组件:墙砖、门、窗户、楼梯……你只需要把它们组合起来就能快速建起一座房子。

Django的三大特点:
- 高效开发:提供很多现成的功能(如用户登录、后台管理等)
- 安全性强:自动帮你防范常见的网络安全漏洞
- 可扩展性高:从小型博客到大型企业级应用都适用
使用场景举例:
- 博客系统
- 内容管理系统(CMS)
- 在线商城
- 数据展示平台
- 企业内部管理系统
二、环境准备:安装Django和基本工具
在这一步,我们会准备好你需要的所有工具:
所需软件清单:
| 工具 | 作用 |
|---|---|
| Python | 编程语言,Django基于Python |
| pip | Python 的包管理工具 |
| Django | Web 框架本身 |
| 文本编辑器(推荐 VS Code) | 写代码的工具 |
| 浏览器(Chrome/Firefox) | 查看网站效果 |
✅ 步骤 1:安装 Python
请前往官网:https://www.python.org/downloads/
下载对应系统的 Python 安装包(建议选择 Python 3.x 版本)
Windows 用户注意: 安装时一定要勾选“Add to PATH”这个选项!
安装完成后,在命令行输入以下命令验证是否安装成功:
python --version
或者 Mac/Linux 用户:
python3 --version
你会看到输出类似:
Python 3.10.4
✅ 成功!
✅ 步骤 2:安装 Django
在命令行中输入:
pip install django
等待几分钟(根据网速而定),然后输入:
django-admin --version
如果输出版本号,说明安装成功!
✅ 步骤 3:安装 VS Code(或者其他你喜欢的编辑器)
推荐下载免费的 VS Code,支持 Windows、Mac 和 Linux。
安装完成后,打开它,稍后我们会用它写代码。
三、核心概念讲解:理解Django的基本结构
Django 有一些重要概念,我们先简单了解,后面会结合项目深入讲解。
🧱 1. MVC 架构 & MTV 模式
- MVC(Model-View-Controller)是一种软件架构模式。
- Django 使用的是 MTV 模式,是 MVC 的变种:
- M (Model):数据模型,负责与数据库交互
- T (Template):模板,决定页面怎么显示
- V (View):视图,处理逻辑(类似控制器)
别怕这些术语,我们后面会通过实例讲明白。
📁 2. Django项目的文件结构
一个典型的Django项目目录如下:
myproject/
├── myproject/
│ ├── __init__.py
│ ├── settings.py # 项目的配置文件
│ ├── urls.py # 路由配置(相当于网站的地图)
│ └── wsgi.py # 启动服务器用的配置
├── manage.py # 命令行工具,启动项目就靠它啦
🔗 3. URL、View、Template之间的关系
我们可以打个比方:
- 当你在浏览器输入网址(比如
http://localhost:8000/home)——这叫 URL - Django 根据这个网址找到对应的 View(也就是一段 Python 函数或类)
- View 处理逻辑之后,返回一个 Template 文件(HTML 页面)
- 最终,浏览器上显示的就是这个 HTML 页面
这就像点外卖的过程:
用户(浏览器) → 点菜(URL) → 后厨做菜(View) → 上菜(Template)
💾 4. 什么是 Model?
Model 就是我们网站的数据结构,比如:
- 用户信息表
- 文章列表
- 商品库存
Django 提供了 ORM(对象关系映射)功能,让我们可以用 Python 来操作数据库,而不需要写 SQL。
四、实战项目:跟着我做一个最简单的个人博客网站
现在是时候实践一把了!我们将制作一个叫做 "Hello Blog" 的极简博客网站。
🎯 功能需求:
- 显示主页
- 主页上有几篇测试文章标题
- 点击某个标题可以跳转到详情页面
步骤 1:创建项目
在命令行中执行:
django-admin startproject hello_blog
就会生成一个叫 hello_blog 的项目文件夹。
进入该目录:
cd hello_blog
运行服务器试试看:
python manage.py runserver
浏览器中打开地址:http://127.0.0.1:8000/
你会看到 Django 的欢迎页面:

✅ 搭建成功!
步骤 2:创建我们的第一个 App —— blog
在 Django 中,App 是一个独立的功能模块,比如 blog 是一个内容模块,auth 是用户模块。
执行命令:
python manage.py startapp blog
此时你会发现项目目录中多了一个名为 blog 的文件夹。
但要让 Django 知道有这个 app,必须手动注册它。
打开 hello_blog/settings.py 文件,在 INSTALLED_APPS 列表中添加:
'blog.apps.BlogConfig',
✅ 完成注册!
步骤 3:定义网页路径(URL 配置)
我们要让访问 / 地址时显示首页。
首先,修改 blog/views.py 文件:
from django.http import HttpResponse
def home(request):
return HttpResponse("这是博客首页")
然后,配置 URL:
在 blog 文件夹下创建一个新文件:urls.py,内容如下:
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='home'),
]
接下来,把这个 app 的 URL 包括进主项目中:
打开 hello_blog/urls.py 文件,改写为:
from django.urls import include, path
urlpatterns = [
path('', include('blog.urls')),
]
现在再运行服务器:
python manage.py runserver
访问 http://127.0.0.1:8000/,你应该能看到:
这是博客首页
🎉 恭喜!你现在有一个真正的网页了!
步骤 4:使用模板渲染 HTML 页面
目前只是返回纯文本,我们要让它显示一个漂亮的页面。
在 blog 目录下创建文件夹:
templates/blog/
然后新建一个 HTML 文件:blog/templates/blog/home.html,内容如下:
<!DOCTYPE html>
<html>
<head>
<title>Hello Blog</title>
</head>
<body>
<h1>欢迎来到我的博客</h1>
<p>这里是一些文章的标题:</p>
<ul>
<li><a href="#">第一篇文章</a></li>
<li><a href="#">第二篇文章</a></li>
<li><a href="#">第三篇文章</a></li>
</ul>
</body>
</html>
然后修改 views.py:
from django.shortcuts import render
def home(request):
return render(request, 'blog/home.html')
刷新页面,你现在应该可以看到一个 HTML 页面啦!
步骤 5:添加文章详情页
我们来加一个点击某篇文章后的详情页面。
首先新增一个视图函数:
def article_detail(request, article_id):
return render(request, 'blog/article.html', {'id': article_id})
再写一个 HTML 文件 blog/templates/blog/article.html:
<!DOCTYPE html>
<html>
<head>
<title>文章 {{ id }}</title>
</head>
<body>
<h1>第 {{ id }} 篇文章内容</h1>
<p>这里是详细的内容……</p>
</body>
</html>
接着更新 URL 配置文件 blog/urls.py:
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='home'),
path('article/<int:article_id>/', views.article_detail, name='article_detail'),
]
这时候你可以尝试访问:
http://127.0.0.1:8000/article/1/
你会看到内容为:“第 1 篇文章内容”
✅ 总结我们现在的项目结构:
hello_blog/
├── blog/
│ ├── templates/
│ │ └── blog/
│ │ ├── home.html
│ │ └── article.html
│ ├── views.py
│ └── urls.py
└── manage.py
五、常见问题解答(Q&A)
❓Q1:为什么运行 runserver 报错说找不到模块?
可能是虚拟环境没有激活,或者 pip 安装的依赖不在当前环境中。
解决办法:
- 确保已正确安装 Django
- 使用
pip list检查是否列出 django - 如果用了虚拟环境,记得先激活
❓Q2:为什么修改了 HTML 内容刷新没变化?
有可能浏览器缓存导致了这个问题。
解决办法: 按住 Ctrl 键的同时点击刷新按钮,或使用隐身模式查看页面。
❓Q3:遇到错误 “No module named ‘blog’”
这是因为你没有正确注册 app。
检查点:
- 是否在
settings.py的INSTALLED_APPS中添加'blog.apps.BlogConfig'
六、学习建议:下一步该学什么?
恭喜你完成了第一个完整的 Django 项目!
接下来可以继续学习这些内容:
- 数据库建模(Model):用 Django 定义数据结构(如文章、评论等)
- 使用数据库查询数据
- Admin 后台管理界面:自己就能操作文章增删改查
- Form 表单提交:让用户可以发布内容
- 静态文件(CSS/JS)管理
- 部署上线:如何把自己的网站放到网上去运行
结语
这篇教程带大家从零开始,一步一步创建了一个简单的 Django 网站。虽然只是一个入门案例,但它已经包含了 Django 的主要组成部分:路由、视图、模板和结构布局。
编程最有趣的地方在于“创造”。只要你坚持下去,很快就能做出像样的产品!
如果你觉得这篇文章对你有用,请点个赞、转发给其他正在学习的朋友,也欢迎留言告诉我你想继续了解哪些知识点,我们一起进步!
🚀 下期见!

评论 0