R / Richie全部文章 ↑

Python · 2 分钟阅读

创建项目骨架

用 django-admin 一行命令起手,再用 startapp 拆分业务。

创建项目

django-admin startproject my_bbs

生成结构:

my_bbs/
├── manage.py
└── my_bbs/
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    ├── asgi.py
    └── wsgi.py

核心文件

文件 作用
manage.py 命令行入口(迁移、启动、shell)
settings.py 全局配置
urls.py 根路由
wsgi.py / asgi.py 部署入口(同步 / 异步)

启动开发服务器

cd my_bbs
python manage.py runserver
python manage.py runserver 8080          # 自定义端口
python manage.py runserver 0.0.0.0:8000 # 局域网访问

settings.py 速查

配置 作用 备注
BASE_DIR 项目根目录 用于构建绝对路径
SECRET_KEY 加密签名密钥 必须 走环境变量
DEBUG 调试模式 生产环境必须 False
ALLOWED_HOSTS 允许访问的域名 DEBUG 关闭时必填
INSTALLED_APPS 启用的 App 新增 App 需注册
MIDDLEWARE 中间件列表 顺序敏感
ROOT_URLCONF 根路由模块 通常无需改动
TEMPLATES 模板引擎 默认 DTL
DATABASES 数据库配置 默认 SQLite
LANGUAGE_CODE 语言 zh-Hans
TIME_ZONE 时区 Asia/Shanghai
USE_TZ 时区感知 推荐 True
STATIC_URL 静态资源前缀 生产需配合 STATIC_ROOT

推荐的分环境配置

config/
├── settings/
│   ├── base.py     # 公共配置
│   ├── dev.py      # DEBUG=True
│   └── prod.py     # DEBUG=False

manage.py 中通过 --settings=config.settings.dev 指定。

最佳实践

  • ✅ 配置按环境拆分
  • ✅ 敏感信息走环境变量或 .env(配合 python-decouple)
  • ✅ 团队统一编辑器与代码风格(推荐 ruff + black)
  • ❌ SECRET_KEY 不要硬编码、不要提交