Skip to content

Django

v5.x
Python

Django 是 Python 最流行的 Web 框架,「自带电池」,功能齐全。

📋 前置要求

Python 3.11+ 已安装
pip 已安装
已下载生成的项目代码

📁 项目结构

backend
manage.py // Django 管理脚本
requirements.txt // 依赖列表
config // 项目配置
__init__.py
settings.py // 主配置
urls.py // URL 路由
wsgi.py
apps // 应用模块
users
models.py
views.py
serializers.py
urls.py
...
static // 静态文件

🚀 运行步骤

第 1 步:进入项目目录

bash
        $
        cd backend
      

第 2 步:创建虚拟环境

bash
        $
        python3 -m venv venv
      

激活虚拟环境:

bash
        $
        source venv/bin/activate
      
关于虚拟环境
虚拟环境可以隔离项目依赖,避免不同项目之间的冲突。每次运行项目前都需要激活虚拟环境。

第 3 步:安装依赖

bash
        $
        pip install -r requirements.txt
      

如果下载慢,可以使用国内镜像:

bash
        $
        pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
      

第 4 步:配置环境变量

复制环境变量文件:

bash
        $
        cp .env.example .env
      

编辑 .env 文件:

变量名说明必填
DEBUG
默认值: True
调试模式
SECRET_KEY Django 密钥
DATABASE_URL 数据库连接
ALLOWED_HOSTS
默认值: localhost,127.0.0.1
允许的主机

第 5 步:数据库迁移

bash
        $
        python manage.py migrate
      

如果需要创建超级用户(管理员):

bash
        $
        python manage.py createsuperuser
      

第 6 步:启动开发服务器

bash
        $
        python manage.py runserver
      

指定端口:

bash
        $
        python manage.py runserver 0.0.0.0:8000
      

第 7 步:验证运行

服务启动后,访问以下地址验证:

启动成功
如果看到 `Starting development server at http://127.0.0.1:8000/` 的消息,说明服务启动成功!

🔧 常用命令

命令说明
python manage.py runserver启动开发服务器
python manage.py migrate执行数据库迁移
python manage.py makemigrations创建迁移文件
python manage.py createsuperuser创建超级用户
python manage.py shell进入 Django Shell
python manage.py collectstatic收集静态文件

❓ 常见问题

虚拟环境未激活

如果提示找不到 Django,确保虚拟环境已激活。终端前面应该显示 (venv)

数据库迁移错误

  1. 确保数据库服务已启动
  2. 检查 DATABASE_URL 配置
  3. 尝试删除迁移文件重新生成:
bash
        $
        python manage.py makemigrations
      

pip 安装很慢

使用国内镜像源:

bash
        $
        pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
      

静态文件 404

开发环境下,确保 DEBUG=True。生产环境需要运行:

bash
        $
        python manage.py collectstatic
      

⏭️ 下一步

Released under the MIT License.