Django 创建第一个项目(保姆级教程)

Django 创建第一个项目:从零开始搭建你的第一个 Web 应用

你是否曾想过,自己也能做出一个像知乎、豆瓣那样的网站?其实,只要掌握一门后端框架,就能迈出这关键一步。今天,我们就来手把手带你完成 Django 创建第一个项目 的全过程。别担心,哪怕你是编程新手,也能轻松跟上节奏。

Django 是一个用 Python 编写的高级 Web 框架,它遵循“快速开发、干净设计”的理念,被誉为“电池自带”的框架——很多功能都内置好了,比如用户认证、数据库操作、管理后台等。想象一下,你不需要从零造轮子,而是站在巨人的肩膀上,直接搭建应用的骨架。

本教程将带你从环境准备开始,一步步完成项目的创建、配置、运行,最终看到一个简单的页面在浏览器中亮起。整个过程就像搭积木,每一步都清晰明了,你只需按顺序拼接即可。


安装 Python 与 Django 环境

在动手之前,我们需要确保开发环境准备就绪。Python 是 Django 的“母体”,没有它,一切无从谈起。目前推荐使用 Python 3.8 及以上版本,因为 Django 已全面支持现代 Python 特性。

打开终端(Windows 用户可用 CMD 或 PowerShell,Mac/Linux 用户用 Terminal),输入以下命令检查 Python 版本:

python --version

如果提示命令未找到,说明尚未安装 Python。你可以从 python.org 下载安装包,安装时记得勾选“Add Python to PATH”选项,这样就能在任意位置调用 python 命令。

安装完成后,我们来安装 Django。使用 pip(Python 的包管理工具)即可完成:

pip install django

这个命令会自动从官方仓库下载并安装最新版 Django。安装过程可能需要几十秒,取决于你的网络速度。安装成功后,验证一下版本:

django-admin --version

如果输出类似 4.2.7 的版本号,说明环境已配置成功。至此,你已经为 Django 创建第一个项目 做好了准备。

💡 小贴士:建议使用虚拟环境(virtual environment)隔离项目依赖。这样多个项目之间不会互相干扰。创建虚拟环境的命令如下:

python -m venv myproject_env

激活环境:

  • Windows:myproject_env\Scripts\activate
  • Mac/Linux:source myproject_env/bin/activate

激活后,再运行 pip install django,依赖将只存在于当前环境。


创建第一个 Django 项目

现在,我们正式进入 Django 创建第一个项目 的核心环节。Django 提供了一个名为 django-admin 的命令行工具,用于快速生成项目结构。

在你希望存放项目的目录下,运行以下命令:

django-admin startproject mysite

这里的 mysite 是你的项目名称,你可以替换成自己喜欢的名字,比如 blog_projecttodo_app。这个命令会创建一个包含多个文件和文件夹的项目根目录。

项目结构大致如下:

mysite/
├── manage.py                 # 项目管理脚本,所有操作都通过它执行
├── mysite/
│   ├── __init__.py
│   ├── settings.py           # 项目配置文件,数据库、静态资源、中间件等都在这里
│   ├── urls.py               # 路由配置,决定 URL 如何映射到视图
│   └── wsgi.py               # 用于部署时与 WSGI 服务器通信
└── db.sqlite3                # 默认的 SQLite 数据库文件(开发用)

📌 说明:manage.py 是 Django 的“万能钥匙”。无论是启动服务器、创建应用、执行数据库迁移,都离不开它。


创建第一个应用(App)

Django 项目由多个“应用”(App)组成。每个 App 负责一个特定功能,比如用户登录、文章发布、评论系统。这就像一个城市里的不同社区:学校、医院、商场各自独立,又共同构成完整城市。

我们来创建一个名为 blog 的应用,用于发布文章:

cd mysite
python manage.py startapp blog

执行后,会在 mysite/ 目录下新增一个 blog 文件夹,结构如下:

blog/
├── __init__.py
├── admin.py                  # 后台管理界面注册点
├── apps.py                   # 应用配置
├── models.py                 # 数据库模型定义
├── views.py                  # 视图函数(处理请求)
├── urls.py                   # 应用级路由
└── templates/                # 存放 HTML 模板文件

🎯 重点:每个 App 都应该有清晰的职责。不要把所有逻辑都写在一个文件里,保持模块化,未来维护更轻松。


配置项目与应用

为了让 Django 知道你新增了 blog 应用,必须在主配置文件中注册它。

打开 mysite/settings.py 文件,在 INSTALLED_APPS 列表中添加 'blog'

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'blog',  # 添加这一行,注册 blog 应用
]

✅ 注意:'blog' 必须写在引号内,且不能有拼写错误。Django 会根据字符串名称查找对应的应用目录。


编写视图与路由

现在我们来实现一个最简单的功能:访问 /hello/ 时,显示“欢迎来到 Django 世界!”。

步骤 1:定义视图函数

打开 blog/views.py,添加如下代码:

from django.http import HttpResponse

def hello_view(request):
    # request 参数代表用户的请求对象,包含 URL、请求方法等信息
    # HttpResponse 用于返回 HTTP 响应内容
    return HttpResponse("欢迎来到 Django 世界!")

这个函数就是一个“视图”,它接收请求,返回响应。你可以把它理解为“服务员”:客人(请求)来了,服务员(视图)端上一道菜(响应)。

步骤 2:配置 URL 路由

接下来,我们需要告诉 Django:当用户访问 /hello/ 时,该调用 hello_view 函数。

blog/urls.py 中写入:

from django.urls import path
from . import views

urlpatterns = [
    path('hello/', views.hello_view, name='hello'),
]
  • path() 定义一个 URL 模式
  • 'hello/' 是路径,用户访问 http://127.0.0.1:8000/hello/ 就会匹配
  • views.hello_view 指向视图函数
  • name='hello' 是一个别名,方便在模板中引用

步骤 3:连接主路由

最后,我们需要把 blog 应用的路由“挂载”到主项目中。

打开 mysite/urls.py,修改内容如下:

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('blog.urls')),  # 将 blog 的路由包含进来
]

🔗 解释:include('blog.urls') 表示当用户访问根路径(/)时,Django 会去 blog/urls.py 中寻找匹配的路径。


启动开发服务器并查看效果

所有配置完成后,我们终于可以运行项目了!

在项目根目录(mysite)执行:

python manage.py runserver

控制台会输出:

Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

打开浏览器,访问 http://127.0.0.1:8000/hello/,你应该能看到页面上显示:

欢迎来到 Django 世界!

🎉 成功了!你已经完成了 Django 创建第一个项目 的全流程,从环境搭建到功能展示,每一步都亲历亲为。


项目结构与开发规范建议

为了帮助你养成良好的开发习惯,这里列出几个关键点:

文件/目录 用途说明
manage.py 项目操作入口,所有命令都通过它执行
settings.py 项目核心配置,包括数据库、安全密钥、静态文件路径等
urls.py 路由控制中心,决定 URL 如何分发到视图
views.py 业务逻辑处理,接收请求,返回响应
models.py 数据库模型定义,决定数据结构
templates/ 存放 HTML 模板文件,用于渲染页面

📝 提示:建议在 settings.py 中设置 DEBUG = True 用于开发,但上线前务必设为 False,以防止信息泄露。


总结与下一步建议

通过本教程,你已经完成了 Django 创建第一个项目 的完整流程。从环境准备、项目生成、应用创建,到视图与路由配置,再到服务器启动,整个过程清晰、可复现。

虽然目前只是一个简单的“Hello World”页面,但它为你打开了通往 Web 开发的大门。接下来,你可以尝试:

  • models.py 中定义文章模型(如标题、内容、发布时间)
  • 使用 Django 的 ORM 操作数据库
  • 创建模板文件,用 HTML 渲染页面
  • 添加后台管理功能,通过 /admin 管理数据

Django 的强大之处,正是在于它把复杂的事情变得简单。只要你愿意一步步来,每一个复杂的网站,都是从一个 hello_view 开始的。

别停下脚步,下一个你,或许就是下一个全栈开发者。