django-admin
是Django的用于管理任务的命令行实用程序,manage.py
和他功能相同,但它是django-admin
创建项目时为每一个项目创建的管理程序
注意:
django-admin
和manage.py
虽然共有绝大部分命令,但是建议对项目操作时使用manage.py
,django-admin
在未设置环境变量DJANGO_SETTINGS_MODULE
或未在之前调用settings.configure()
的情况下会报错
命令 | 功能 |
---|---|
version | 查看当前Django版本 |
check | 检查整个Django项目是否存在常见问题 |
compilemessages | 由makemessages 创建的.po 文件编译为.mo 文件,支持与内置的文字一起使用 |
createcachetable | 使用设置文件中的信息创建与数据库缓存后端一起使用的缓存表 |
dbshell | 使用在USER ,PASSWORD 等设置中指定的连接参数,为ENGINE 设置中指定的数据库引擎运行命令行客户端 |
diffsettings | 显示当前设置文件和Django默认设置(或--default 指定的另一个设置文件)之间的差异 |
dumpdata | 将与应用程序名称关联的数据库中的所有数据输出到标准输出 |
flush | 从数据库中删除所有数据,然后重新执行所有同步后处理程序。已应用的迁移不会被清除 |
inspectdb | 将Django模型模块(models.py文件)输出到标准输出。 |
loaddata | 搜索指定的fixture(数据库的序列化内容的文件的集合)并将其内容加载到数据库中 |
makemessages | 在当前目录的整个源代码树上运行,并拉取所有标记为要翻译的字符串。 |
makemigrations | 根据检测到的模型更改或创建新迁移 |
migrate | 将数据库状态与当前模型和迁移集同步 |
runserver | 在本地计算机上启动轻量级开发Web服务器 |
sendtestemail | 向指定的收件人发送测试电子邮件(以确认通过Django发送的电子邮件是否有效) |
shell | 启动Python交互式解释器 |
showmigrations | 显示项目中的所有迁移 |
sqlflush | 打印将为flush命令执行的SQL语句 |
sqlmigrate | 打印迁移名称的SQL |
sqlsequencereset | 打印用于重设给定应用程序名称的序列的SQL语句 |
squashmigrations | 如果可能的话,将app_label 的迁移(包括migration_name 在内)压缩为更小的迁移。 |
startapp | 在当前目录或给定目录中为给定应用程序名称创建Django应用程序目录结构 |
startproject | 在当前目录或给定目录中为给定项目名称创建Django项目目录结构 |
test | 对所有已安装的应用程序运行测试 |
testserver | 使用来自给定fixture的数据运行Django开发服务器(与runserver一样) |
命令 | 功能 |
---|---|
changepassword | 更改用户密码 |
createsuperuser | 创建一个超级用户帐户(具有所有权限的用户) |
remove_stale_contenttypes | 从数据库中删除过时的内容类型(从已删除的模型中) |
clearsessions | 可以作为计划任务作业运行,也可以直接清除过期的会话。 |
collectstatic | 将静态文件收集到中STATIC_ROOT |
findstatic | 使用已启用的查找器搜索一个或多个相对路径 |
查看当前Django版本
django-admin version
使用系统检查框架来检查整个Django项目中的常见问题。
默认情况下,将检查所有应用程序。
py manage.py check auth admin myapp
py manage.py check --tag models --tag compatibility
py manage.py check --list-tags
admin
caches
database
models
staticfiles
templates
translation
urls
指定将在其中创建缓存表的数据库
py manage.py createcachetable --database DATABASE
py manage.py diffsettings
py manage.py diffsettings --all
将与应用程序名称关联的数据库中的所有数据输出到标准输出
如果未提供应用程序名称,则所有安装的应用程序将被输出
py manage.py dumpdata
py manage.py dumpdata myapp
py manage.py dumpdata --format xml
支持的序列选项有 json(默认), xml, yaml
py manage.py dumpdata --exclude=myapp1
py manage.py dumpdata myapp > myapp_dump.json
其他选项
--indent
输出中使用的缩进空间的数量
--database
指定转储数据的数据库
--natural-primary
省略此对象的序列化数据中的主键
--pks PRIMARY_KEYS
仅输出由逗号分隔的主键列表指定的对象
--output, -o
指定要写入序列化数据的文件
从数据库中删除所有数据。已应用的迁移不会被删除。只删除具体数据,不删除数据表!
py manage.py flush
根据数据库中的表生成models文件
py manage.py inspectdb
加载数据到数据库
py manage.py loaddata myapp_dump.json
py manage.py makemigrations
py manage.py makemigrations --merge
py manage.py makemigrations myapp
py manage.py migrate
py manage.py migrate myapp
py manage.py migrate 0001
py manage.py runserver
默认 127.0.0.1:8000
py manage.py runserver -ipv6 或 django-admin runserver -6
默认 ::1:8000
py manage.py runserver 7000
py manage.py runserver localhost:8000
py manage.py shell
py manage.py shell -i ipython 或 py manage.py shell -i bpython 或 py manage.py shell -i python
py manage.py showmigrations
py manage.py showmigrations myapp
打印将对该flush 命令执行的SQL语句
py manage.py sqlflush
输出指定应用程式迁移的SQL语句
py manage.py sqlmigrate myapp 0001
创建应用程序
py manage.py startapp myapp
django-admin startproject dome
django-admin startproject dome /Users/jairo/project/myproject
创建超级管理员账户
py manage.py createsuperuser
为超级管理员账户修改密码
py manage.py changepassword admin