找回密码
 立即注册
搜索
查看: 100|回复: 0

Django 开发中常用命令

[复制链接]

27

主题

30

回帖

194

积分

管理员

积分
194
发表于 2026-7-16 22:58:29 | 显示全部楼层 |阅读模式
Django 开发中,常用命令主要分为项目/应用管理数据库迁移调试运行交互环境辅助工具几大类。以下是高频命令速查表:

1. 项目与应用管理(最基础)

命令
说明
django-admin startproject myproject
创建名为 myproject 的新项目
python manage.py startapp myapp
在项目中创建名为 myapp 的新应用
python manage.py help
列出所有可用管理命令

2. 运行与调试(开发阶段)

命令
说明
python manage.py runserver
默认 127.0.0.1:8000 启动开发服务器
python manage.py runserver 8080
指定端口 8080
python manage.py runserver 0.0.0.0:8000
允许局域网其他设备访问(需在 settings.py 设置 ALLOWED_HOSTS

3. 数据库迁移(核心操作)

命令
说明
python manage.py makemigrations
根据模型变化生成迁移文件(检查所有应用)
python manage.py makemigrations myapp
仅为指定应用生成迁移文件
python manage.py migrate
执行所有未应用的迁移,同步数据库结构
python manage.py migrate myapp
仅迁移指定应用
python manage.py migrate myapp 0001
回滚到指定的迁移版本
python manage.py showmigrations
查看所有迁移文件的状态(是否已应用)
python manage.py sqlmigrate myapp 0001
查看某个迁移文件对应的原生 SQL 语句(调试用)

4. 创建超级用户与认证

命令
说明
python manage.py createsuperuser
交互式创建后台管理员账号
python manage.py changepassword username
修改指定用户的密码

5. 交互式环境(调试/测试)

命令
说明
python manage.py shell
启动 Django 项目环境的 Python 交互终端(已加载 settings)
python manage.py shell_plus
需安装 django-extensions,自动导入所有模型类,更便捷

6. 静态文件与媒体文件

命令
说明
python manage.py collectstatic
将所有静态文件(CSS/JS/图片)收集到 STATIC_ROOT 目录(部署时用)
python manage.py findstatic static/file.css
查找静态文件的实际路径(调试路径问题)

7. 测试相关

命令
说明
python manage.py test
运行所有应用的测试用例
python manage.py test myapp
仅运行指定应用的测试
python manage.py test --keepdb
测试结束后保留测试数据库(加快重复测试速度)

8. 数据导出与导入(fixture 固定数据)

命令
说明
python manage.py dumpdata myapp > data.json
将指定应用的数据导出为 JSON 文件
python manage.py loaddata data.json
将 JSON 数据导入数据库

9. 其他实用命令

命令
说明
python manage.py check
检查项目配置和模型是否存在常见错误(不启动服务器)
python manage.py dbshell
直接进入项目配置的数据库命令行客户端(如 psql/sqlite3)
python manage.py flush
清空数据库所有数据(保留表结构,危险操作
python manage.py reset_db
需安装 django-extensions,直接删除并重建数据库(极危险

💡 记住一条万能命令

任何不确定时,输入:python manage.py help或针对某个子命令:python manage.py help migrate
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|老村长论坛

GMT+8, 2026-7-28 00:54 , Processed in 0.045337 second(s), 42 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表