零基础也能学会:用 Django 搭建你的第一个 Python 网站
大家好!我是小林,一名 211 高校的计算机专业研究生,也是一名技术博客作者。最近有好几个学弟学妹问我:“学 Python 之后能做什么?”、“怎么用 Python 做网站?”——这让我想起自己刚入门时的迷茫。于是,我决定写一篇真正面向零基础朋友的 Django 入门教程。
Django 是一个用 Python 编写的 Web 框架,简单说,它能帮你快速搭建功能完整的网站,而不用从零开始造轮子。我当初学的时候,光是配置环境就折腾了一天,后来才发现,其实只要几步就能跑起来!今天,我就手把手带你走一遍,保证你跟着做,30 分钟内就能看到自己的第一个网页。
为什么选择 Django?而不是 Go 或其他?
你可能会听说 Go(Golang)也是一个流行的后端语言。没错,Go 性能高、并发强,适合大型系统。但如果你是完全零基础的新手,我强烈建议你先从 Django 开始。
| 对比项 | Django (Python) | Go (Gin/Echo 等框架) |
|---|---|---|
| 学习曲线 | 平缓,语法接近自然语言 | 较陡,需理解指针、并发等概念 |
| 开发速度 | 极快,自带大量功能 | 需手动实现较多基础功能 |
| 适合人群 | 初学者、快速原型开发 | 有编程基础、追求高性能场景 |
| 社区资源 | 中文文档丰富,教程多 | 中文资料相对较少 |
我的开发心得是:先学会“做出来”,再追求“做得好”。Django 能让你快速获得成就感,这是坚持学习的关键!
第一步:搭建开发环境
别担心,这比你想象的简单。我们只需要三样东西:
- Python 3.8 或更高版本
- pip(Python 的包管理工具)
- 一个代码编辑器(推荐 VS Code)
检查 Python 是否安装
打开终端(Windows 用 CMD 或 PowerShell,Mac/Linux 用 Terminal),输入:
python --version
# 或者
python3 --version
如果显示类似 Python 3.10.12,说明已安装。如果没有,请去 python.org 下载安装,并务必勾选“Add to PATH”(Windows 用户特别注意!)。
安装 Django
在终端中运行:
pip install django
安装完成后,验证是否成功:
django-admin --version
如果显示版本号(如 4.2.7),恭喜你,环境准备完成!
💡 避坑指南:建议使用虚拟环境(virtual environment),避免包冲突。但为了简化,本教程暂不引入,后续你可以搜索
python venv自行了解。
第二步:理解 Django 的核心概念(用大白话)
Django 遵循 MVT 模式(Model-View-Template),听起来很玄,其实很简单:
- Model(模型):和数据库打交道的部分。比如用户信息、文章内容,都存在这里。
- View(视图):处理逻辑的地方。比如“当用户访问首页时,返回什么内容”。
- Template(模板):网页的“样子”。就是 HTML 文件,可以嵌入动态数据。
你可以这样记:
用户请求 → View 处理 → 从 Model 取数据 → 渲染 Template → 返回网页
另外,Django 还有一个重要概念:项目(Project) vs 应用(App)
- 一个 项目 是整个网站(比如“我的博客系统”)
- 一个 应用 是项目中的一个功能模块(比如“用户登录”、“文章发布”)
就像一辆汽车(项目)由引擎、轮胎、座椅(应用)组成。
第三步:动手!创建你的第一个网站
我们现在要做的,是一个极简的“欢迎页面”:用户访问网址,看到 “Hello, Django!”。
1. 创建项目
在终端中,进入你想存放代码的文件夹(比如桌面),运行:
django-admin startproject mysite
这会生成一个叫 mysite 的文件夹,里面是 Django 项目的骨架。
2. 启动开发服务器
进入项目目录并启动:
cd mysite
python manage.py runserver
你会看到类似这样的输出:
Starting development server at http://127.0.0.1:8000/
打开浏览器,访问 http://127.0.0.1:8000/ —— 看到火箭图标了吗?恭喜!你的 Django 项目已经跑起来了!
⚠️ 注意:这个服务器仅用于开发,不能用于生产环境。
3. 创建一个应用
现在我们要添加自定义页面。先创建一个应用:
python manage.py startapp hello
这会在项目根目录下生成 hello 文件夹。
4. 注册应用
Django 不会自动识别新应用,需要手动注册。打开 mysite/settings.py,找到 INSTALLED_APPS,在列表里加上 'hello':
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
# ... 其他默认项
'hello', # ← 加这一行
]
5. 编写视图(View)
打开 hello/views.py,替换为以下代码:
from django.http import HttpResponse
def home(request):
return HttpResponse("Hello, Django! 欢迎来到我的第一个网站!")
这段代码的意思是:当有人访问某个路径时,返回一段文字。
6. 配置 URL 路由
现在需要告诉 Django:“当用户访问根路径 / 时,调用 home 函数”。
先在 hello 文件夹下新建一个文件 urls.py:
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='home'),
]
然后修改 mysite/urls.py,把请求转发给 hello 应用:
from django.contrib import admin
from django.urls import path, include # ← 引入 include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('hello.urls')), # ← 添加这一行
]
7. 重新启动服务器,刷新页面!
回到终端,按 Ctrl + C 停止服务器,再运行:
python manage.py runserver
刷新浏览器,你应该看到:
Hello, Django! 欢迎来到我的第一个网站!
🎉 成功了!这就是你亲手搭建的第一个 Python 网站。
新手常遇到的问题 & 解决方案
❓ 问题1:command not found: django-admin
- 原因:Python 或 pip 没正确安装,或没加入系统 PATH。
- 解决:重新安装 Python,安装时勾选 “Add to PATH”;或尝试用
python -m django startproject ...代替django-admin。
❓ 问题2:访问页面显示 404
- 原因:URL 配置错误,或应用未注册。
- 检查点:
settings.py中是否注册了应用?mysite/urls.py是否包含了hello.urls?hello/urls.py中的path是否正确?
❓ 问题3:修改代码后页面没变化
- 原因:Django 开发服务器通常会自动重载,但有时会卡住。
- 解决:手动停止服务器(Ctrl+C),再重新运行
runserver。
❓ 问题4:中文显示乱码?
- 原因:文件编码问题。
- 解决:确保
.py文件保存为 UTF-8 编码(VS Code 默认就是)。
接下来该学什么?我的学习建议
完成这个小项目只是开始!如果你想继续深入,我建议按以下路径走:
- 学习模板(Template):把
HttpResponse改成返回 HTML 文件,实现真正的网页布局。 - 尝试 Model:创建一个“留言板”,让用户提交留言并存储到数据库(Django 自带 SQLite,无需额外安装)。
- 了解 Django Admin:自动生成后台管理系统,超实用!
- 部署上线:用免费平台(如 Render、Vercel + Django)把网站放到互联网上,让朋友也能访问。
我的开发心得:不要试图一次性学会所有东西。先做出一个能跑的小功能,再逐步扩展。每次解决一个小问题,都是进步。
结语:你的 Web 开发之旅,从此开始
看到这里,你已经跨过了最难的第一步。很多人卡在环境配置或概念理解上,但你做到了!
记住,每个大神都是从 Hello World 开始的。Django 的强大之处在于,它既能让你快速上手,又能支撑复杂应用(Instagram、知乎早期都用 Django)。
如果你觉得这篇教程对你有帮助,欢迎点赞收藏,也欢迎在我的博客评论区留言提问。我会持续更新更多 Django 实战教程,比如“用 Django + Bootstrap 做个人博客”、“集成用户登录系统”等。
Go 并不是唯一的选择,Python + Django 同样能带你走进精彩的 Web 世界。现在,轮到你动手了!
作者:小林|211 计算机研二|专注写新手友好的技术教程
下期预告:《Django 模板入门:让你的网站不再只有文字》

评论 0