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

在开始编写代码之前,先来了解一下我们今天要学习的内容是什么。
Django 是一个使用 Python 编写的开源 Web开发框架。它可以帮助你快速地开发功能强大的网站和Web应用程序。
你可以把它想象成盖房子时的脚手架和工具包。虽然你也可以用砖块、锤子从头建造房子,但用工具包会快很多,也更安全可靠。
Django 的主要特点是:
- 高效:内置了大量常用的功能(如用户认证、数据库操作、后台管理等),节省大量重复劳动
- 安全:自动防止一些常见的网站漏洞(如SQL注入)
- 可扩展:适合从小项目到大型企业级应用
简单来说,如果你想用 Python 来做网站,Django 就是一个非常好的选择。
二、环境准备:搭建Django开发环境

第一步:安装Python
Django 是基于 Python 的框架,所以第一步你需要确保电脑里已经安装了 Python。
✅ 检查是否安装 Python: 打开终端(Windows 用户是 CMD 或 PowerShell,Mac 和 Linux 用户是终端 Terminal),输入以下命令:
python --version
如果出现类似 Python 3.x.x,说明已经安装成功。如果没有看到版本号,可以去 https://www.python.org/downloads/ 下载并安装最新版本的 Python。
💡 注意:推荐使用 Python 3.8 及以上版本。
第二步:安装 pip
pip 是 Python 的官方包管理工具,用于安装各种模块和库。
大多数新版 Python 安装程序都会自带 pip。你可以通过以下命令检查是否已安装:
pip --version
如果提示没有这个命令,请重新安装 Python,并确保勾选“Add to PATH”或使用有 pip 的安装选项。
第三步:安装Django
在确认了 Python 和 pip 已安装后,我们就可以安装 Django 了。
在终端中运行下面这条命令:
pip install django
等待几秒钟,安装完成后可以通过以下命令查看是否安装成功:
django-admin --version
如果输出的是类似 4.2.10 这样的版本号,就说明安装成功啦!
第四步:创建工作目录
为了方便管理代码,我们可以新建一个专门存放项目的文件夹。
比如,在桌面上新建一个名为 my_django_project 的文件夹:
mkdir my_django_project
cd my_django_project
这样我们就进入了项目的主目录。
三、Django核心概念简介(新手友好版)

Django 有一些关键术语,我们来简单介绍几个最基础也是最重要的概念,帮助你理解整个项目的结构和逻辑。
1. 什么是 Web 框架?
一个 框架(Framework),就像一个已经搭好的舞台,你可以在这个舞台上表演自己的剧目(也就是编写自己的网站逻辑)。使用框架的好处是不需要从零搭建舞台,只需要专注于内容和互动。
2. MVC 架构与 MTV 模式
你可能会听说过 MVC(Model-View-Controller)架构,这是 Web 应用开发中的一种经典模式。
Django 使用的是一种叫做 MTV(Model-Template-View) 的设计模式:
| 模块名 | 职责 |
|---|---|
| Model(模型) | 负责与数据库交互,比如创建表格、存储数据 |
| Template(模板) | 控制网页显示的内容,就是前端页面部分 |
| View(视图) | 决定哪些数据展示给哪个页面,类似于控制器 |
不用担心,后面我们会通过例子慢慢理解这些概念 😊
3. 最基本的Django组件包括:
| 组件 | 功能 |
|---|---|
| 项目(Project) | 整个网站的大工程,包含多个应用 |
| 应用(App) | 具体功能模块,如博客模块、用户注册模块等 |
| 视图函数(View) | 接收请求并返回响应内容(如返回 HTML 页面) |
| URL 路由(URLConf) | 把不同的网址链接到对应的视图函数 |
| 模板(Templates) | 显示网页内容,常配合 HTML 文件使用 |
| 模型(Model) | 用于定义数据库结构(表结构) |
| 数据库(Database) | 存储网站的数据,默认使用 SQLite |
四、实战项目:一步步创建你的第一个Django网站

我们将动手做一个最简单的网站——显示一句话:“欢迎来到我的第一个Django网站!”
第一步:创建项目(Project)
在我们刚创建的工作目录下运行:
django-admin startproject mysite
这行命令表示创建一个名为 mysite 的Django项目。
现在你的文件夹结构应该如下:
mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py
manage.py是一个命令行工具,用来和项目进行交互settings.py包含所有项目的配置urls.py用来配置路由(访问什么地址跳转到哪里)wsgi.py是部署网站时使用的模块
第二步:启动服务器测试项目是否运行正常
进入项目根目录并启动服务:
cd mysite
python manage.py runserver
你会看到类似这样的输出:
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
恭喜你!服务器已经启动成功了。
现在打开浏览器,输入网址:http://localhost:8000
你应该能看到 Django 默认的欢迎页面:
The install worked successfully! Congratulations!
第三步:创建第一个应用(App)
Django 的每一个具体功能都封装在一个叫 App 的模块中。接下来我们要添加一个功能 —— 在网页上显示一句话。
运行命令创建一个 app:
python manage.py startapp hello
现在你的目录结构变成这样:
mysite/
manage.py
mysite/
...
hello/
migrations/
__init__.py
admin.py
apps.py
models.py
tests.py
views.py
现在我们需要告诉 Django 我们新添加了一个 App。
打开 mysite/settings.py 文件,在 INSTALLED_APPS 列表中加入我们刚刚创建的 hello 模块:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'hello', # 添加这一行
]
保存这个文件。
第四步:写第一个视图(View)
视图负责接收用户的请求,并决定返回什么内容。
打开 hello/views.py 文件,写入以下代码:
from django.http import HttpResponse
def index(request):
return HttpResponse("欢迎来到我的第一个Django网站!")
这段代码的意思是:
- 导入一个叫
HttpResponse的类 - 定义一个函数
index(),这个函数会在用户访问网页时被调用 - 函数返回一句欢迎语句,作为网页内容呈现
第五步:配置URL路由
现在,我们要让某个网址对应这个视图函数。
创建一个新的文件:hello/urls.py,然后写入:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
这个配置表示访问 “空路径”,就会触发我们刚刚写好的 views.index 函数。
接着,我们要把这个 app 的 url 配置绑定到整个项目的网址体系中。
打开 mysite/urls.py,修改为如下内容:
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('hello.urls')), # 新增这行
]
这里我们引入了 hello 模块中的 urls 配置。
第六步:再次启动服务器测试效果
回到终端,按下 Ctrl + C 停止原来的服务器,然后重新启动:
python manage.py runserver
现在访问:http://localhost:8000,你会看到:
欢迎来到我的第一个Django网站!
🎉 太棒了!你刚刚完成了一个完整的“Hello World”级别的Django网站!
五、新手常见问题解答
问题1:为什么我运行服务器的时候报错说找不到模块?
回答:请确认是否正确激活虚拟环境,或者尝试重新安装一次 Django。执行命令:
pip install django
问题2:无法连接 localhost:8000?
回答:可能是端口被占用了。可以指定另一个端口启动服务器:
python manage.py runserver 8080
问题3:更改了代码但没反应怎么办?
回答:有时需要重启开发服务器才能使代码改动生效。关闭再重新运行 runserver 即可。
问题4:页面显示中文乱码?
回答:Django 默认是 utf-8 编码,一般不会出问题。请检查你的编辑器是否以 UTF-8 格式保存了文件。
六、学习建议:下一步该学什么?
恭喜你完成了第一次实战!
接下来,你可以继续学习以下几个方向,进一步掌握 Django 的强大功能:
✅ 继续进阶学习路线图:
模板系统(Templates)
- 学习如何将静态 HTML 页面整合到 Django 中
- 学习变量替换、模板继承等高级技巧
模型系统(Models)
- 学习如何用 Django 创建数据库表
- 实现网站数据持久化存储
表单(Forms)
- 学习如何让用户提交信息(比如注册、登录等)
后台管理(Admin)
- 自动生成后台管理界面,快速管理网站内容
静态资源(Static Files)
- 如何加载 CSS、JavaScript、图片等内容
部署上线
- 学习将本地项目部署到互联网供他人访问
如果你坚持下去,不久后你就能做出一个像模像样的博客、电商网站,甚至社交平台!
总结
在本文中,我们:
- 介绍了 Django 是什么以及它可以做什么
- 一步步搭建好了开发环境
- 理解了基本概念如视图、路由、应用
- 动手完成了一个“欢迎页面”的小网站
- 解决了一些常见的安装和调试问题
- 提出了后续的学习方向
只要你肯花时间练习,不断试错,很快就能写出更复杂、更有意思的网站来!
📌 学编程最关键的就是多动手实践。遇到问题很正常,多查文档、看教程、请教别人,终将成为高手!
加油吧,未来全栈工程师!🚀
附录:完整代码片段整理
- hello/views.py:
from django.http import HttpResponse
def index(request):
return HttpResponse("欢迎来到我的第一个Django网站!")
- hello/urls.py:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
- mysite/urls.py:
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('hello.urls')),
]

评论 0