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

Django 是一个用 Python 编写的Web 框架,它可以帮助你快速地开发功能强大的网站。你可以把它想象成建房子的“脚手架”——有了它,你就可以省去很多重复的工作,专注于写业务逻辑。
Django 适合做各种类型的网站,比如博客、论坛、商城、企业官网等。它已经内置了很多实用的功能,例如:
- 用户登录系统
- 数据库操作
- 管理后台(Admin)
- 表单验证
- 安全保护机制
所以,如果你是初学者,想从零开始做一个自己的网站,Django 就是一个非常合适的选择!
环境准备:搭建你的开发环境


在写代码之前,我们先来准备好开发 Django 所需的环境。这一步可能会让你有点紧张,但请相信我,只要一步步来,就不会有问题。
第一步:安装 Python
Django 是用 Python 写的,所以你首先要安装 Python。推荐使用 Python 3.10 或以上版本。
如何检查 Python 是否安装?
打开终端(Windows 上叫 CMD 或 PowerShell)输入下面命令:
python --version
或者:
python3 --version
如果显示类似 Python 3.12.2 的信息,说明你已经安装好了。
如果没有,请前往 Python 官网 下载并安装最新版。
⚠️ 注意:安装时一定要勾选 "Add Python to PATH" 这个选项!
第二步:创建虚拟环境
虚拟环境(Virtual Environment)就像一个“沙盒”,专门存放项目的依赖文件,这样每个项目之间不会互相影响。
创建虚拟环境:
python -m venv venv
这个命令会创建一个名为 venv 的文件夹,里面就是我们的独立环境。
激活虚拟环境:
Windows:
venv\Scripts\activateMac/Linux:
source venv/bin/activate
激活后你会看到终端前面有 (venv) 字样,表示成功进入了虚拟环境。
第三步:安装 Django
在激活虚拟环境的前提下,运行下面命令安装 Django:
pip install django
安装完成后可以检查一下是否安装成功:
django-admin --version
如果能看到版本号(如 4.2.6),就说明 Django 已经安装好了!
核心概念:什么是 MVC?什么是 App?
Django 使用的是 MVT 模式(Model - View - Template),和传统的 MVC 有些不同,但理解这些概念对后续开发非常重要。
Model(模型):数据结构定义者
Model 负责定义数据库中存储的数据结构。你可以把它想象成一张 Excel 表格的“结构”。
举个例子:你想存用户的信息,那就可以创建一个叫 User 的 Model,里面包含用户名、密码、邮箱等字段。
View(视图):处理请求的人
View 是负责接收用户请求(比如访问某个网页),然后返回响应内容的部分。你可以理解为“控制器”。
Template(模板):网页的骨架
Template 是 HTML 文件,用于展示网页的结构和内容。你可以把数据传递给 Template,让它动态显示不同的内容。
实战项目:搭建一个最简单的网站

我们现在要一步一步地建立一个最简单的网站,包括首页、联系页面,并学会如何启动服务器和添加链接。
第一步:创建项目
在终端执行以下命令:
django-admin startproject mysite
这个命令会创建一个叫做 mysite 的项目文件夹,目录结构如下:
mysite/
├── manage.py
└── mysite/
├── __init__.py
├── settings.py
├── urls.py
└── wsgi.py
现在,我们进入 mysite 目录:
cd mysite
第二步:启动开发服务器
运行下面这条命令,启动 Django 自带的 Web 服务器:
python manage.py runserver
打开浏览器访问 http://127.0.0.1:8000,你应该能看到欢迎页,说明服务器运行成功了!
第三步:创建第一个应用(App)
在 Django 中,一个项目可以包含多个 App,比如一个博客项目可能有“文章 App”、“评论 App”、“用户管理 App”等等。
我们要创建一个名叫 pages 的 App 来负责网站页面的展示。
执行命令:
python manage.py startapp pages
这时你会发现多了一个 pages/ 文件夹。
第四步:注册 App
为了让 Django 知道这个 App 存在,我们需要在 mysite/settings.py 文件里找到 INSTALLED_APPS 列表,添加 'pages',,如下:
INSTALLED_APPS = [
...
'pages',
]
第五步:写第一个页面
我们要让访问 / 的时候显示首页内容。
1. 编辑 pages/views.py
这是视图文件,用来定义页面返回的内容:
from django.http import HttpResponse
def home_view(request):
return HttpResponse("<h1>你好,这是我的第一个网页!</h1>")
2. 配置 URL 路由
打开 pages 文件夹,新建一个 urls.py 文件:
# pages/urls.py
from django.urls import path
from . import views
urlpatterns = [
path('', views.home_view, name='home'),
]
接下来,在主项目的 urls.py(即 mysite/urls.py)里引入刚刚设置好的路由:
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('pages.urls')),
]
3. 再次运行服务器
python manage.py runserver
再次访问 http://127.0.0.1:8000,这次你应该能看到我们写的内容!
第六步:加一个联系页面
我们再来加一个联系页面 /contact。
1. 修改 pages/views.py
def contact_view(request):
return HttpResponse("<h2>联系方式:hello@example.com</h2>")
2. 修改 pages/urls.py
urlpatterns = [
path('', views.home_view, name='home'),
path('contact/', views.contact_view, name='contact'),
]
刷新浏览器访问 http://127.0.0.1:8000/contact/,就能看到联系页面啦!
常见问题解答
下面是一些新手常见的问题和解决方法:
Q1:运行 runserver 时报错,说端口被占用怎么办?
有可能另一个服务正在使用 8000 端口。你可以换一个端口启动服务器,例如:
python manage.py runserver 8080
然后访问 http://127.0.0.1:8080 即可。
Q2:没有看到修改后的效果怎么办?
Django 的开发服务器是有自动热重载功能的,但有时候可能没生效。试着重新运行 runserver,或者刷新页面看看。
Q3:出现 “No module named ‘pages’” 怎么办?
确保你在 settings.py 的 INSTALLED_APPS 中正确添加了 'pages',并且拼写没错。
Q4:路径匹配不生效?
检查 URL 配置是否正确。Django 对路径大小写敏感,也要注意是否结尾有斜杠 /。
学习建议:下一步该学什么?
恭喜你完成了你的第一个 Django 项目!这只是开始,接下来你可以学习以下内容:
1. 使用模板(Templates)美化网页
目前我们用的是直接输出 HTML 的方式,实际上我们会把 HTML 写进 .html 文件中,让代码更清晰易维护。
2. 添加静态资源(CSS、图片)
学会加载 CSS 文件和图片,让你的网站更有颜值。
3. 学习数据库(Models)
尝试建立一个留言簿、用户注册登录系统,这时候你就需要使用 Django 的 ORM 功能操作数据库了。
4. 学习表单(Forms)
用户填写信息的时候需要用到 Form 类型,Django 提供了很方便的工具来处理表单提交。
结语
你现在已经有能力搭建一个基本的 Django 网站了!别急着追求炫酷的功能,先把基础打牢最重要。编程的学习过程就像是盖房子,砖头一块块垒上去,慢慢你会发现,原来自己也可以做出漂亮的网站!
加油,祝你学习愉快 😊

评论 0