manage.py


查看命令的作用的语句

C:\Users\Administrator> python manage.py help
Type 'manage.py help <subcommand>' for help on a specific subcommand.
Available subcommands:
[auth]
changepassword 更改密码
createsuperuser 创建admin超级用户
[contenttypes]
remove_stale_contenttypes
[django]
check
compilemessages
createcachetable 使用设置文件中的信息创建与数据库高速缓存后端一起使用的高速缓存表
dbshell 进入数据库的命令行
diffsettings 显示当前设置文件和Django默认设置(或所指定的另一个设置文件--default)之间的差异
dumpdata 导出数据库数据
flush 清空数据库
inspectdb 让本地的数据库生成models.py内的代码
loaddata 导入数据库数据
makemessages
makemigrations 生成数据库脚本(迁移文件)
migrate 同步数据库 这个和makemigrations是做数据库迁移,每次数据库有更改或者model有更改都需要操作
sendtestemail 向指定的收件人发送测试电子邮件,测试django是否能够发送邮件
shell django的shell命令行
showmigrations 显示项目中的所有数据迁移
sqlflush 打印将对该flush 命令执行的SQL语句
sqlmigrate
sqlsequencereset
squashmigrations
startapp 创建应用
startproject 创建项目
test 对所有已安装的应用程序运行测试
testserver runserver 使用自定义配置运行服务
[sessions]
clearsessions 可以作为cron作业运行,也可以直接清除过期的会话。
[staticfiles]
collectstatic
findstatic
runserver 启动django服务

manage.py 命令选项

manage.py 是每个Django 项目中自动生成的一个用于管理项目的脚本文件,需要通过python 命令执行。manage.py 接受的是Django 提供的内置命令。

内置命令包含

1 check
2 dbshell
3 diffsettings
4 flush
5 makemigrations
6 migrate
7 runserver
8 shell
9 startapp
10 startprojec

其实有三种方式,可以在cmd 窗口中执行Django 提供的内置命令。

1 django-admin <command> [options]
2 python manage.py <command> [options]
3 python -m django <command> [options]

1 django-admin 是用于管理Django 的命令行工具集,当我们成功安装 Django 后,在操作系统中就会有这个命令。

2 manage.py 则是每个Django 项目中自动生成的一个用于管理项目的脚本文件,需要在cmd窗口中 cd 到 Django项目

的manage.py 所在的目录后通过python命令执行。其中的 command 是Django内置的或者你自定义的命令。

当然你可以在在 pycharm 中启动manage.py 时设置参数。

1 check

检查整个Django 项目是否存在常见问题。默认情况下,所有应用都将被选中。可以通过提供app的名字检查指定的应用:

python manage.py check app

2 diffsettings

显示当前设置文件与Django的默认设置之间的差异。

python manage.py diffsettings

3 flush

从数据库中删除所有数据。

已应用的迁移不会被清除。只删除具体数据,不删除数据表。

如果您希望从空数据库启动并重新运行所有迁移,则应该删除并重新创建数据库,然后再运行 migrate,这样会连原

来的数据表都删了。

python manage.py flush

4 makemigrations

根据检测到的模型创建新的迁移。

迁移的作用,更多的是将数据库的操作,以文件的形式记录下来,方便以后检查、调用、重做等等。

尤其是对于Git版本管理,它无法获知数据库是如何变化的,只能通过迁移文件中的记录来追溯和保存。

python manage.py makemigrations app1 app2

5 migrate

使数据库状态与当前模型集和迁移集同步。

说白了,就是将对数据库的更改,主要是数据表设计的更改,在数据库中真实执行。

例如,新建、修改、删除数据表,新增、修改、删除某数据表内的字段等等。

python manage.py migrate

6 runserver

启用Django 为我们提供的轻量级的开发用的Web 服务器。

默认情况下,服务器运行在IP地址127.0.0.1 的 8000 端口上。

如果要自定义服务器端口和地址,可以显式地传递一个IP地址和端口号给它。

python manage.py runserver
python manage.py runserver 127.0.0.1:8080 # 当提示端口被占用的时候,可以用其它端口

7 shell

启动带有Django 环境的Python 交互式解释器,也就是命令行环境。

默认使用基本的python 交互式解释器。这个命令非常常用,是我们测试和开发过程中不可或缺的部分!

python manage.py shell

8 startapp

创建新的 app。默认情况下,会在这个新的 app 目录下创建一系列文件模版,比如models.py、views.py、admin.py等等。

python manage.py startapp app_name

9 startproject

新建工程。默认情况下,新目录包含 manage.py 脚本和项目包(包含 settings.py 和其他文件)。

python manage.py startproject project_name

10 test

运行所有已安装的 app 的测试代码。

python manage.py test [test_label [test_label ...]]

app提供的命令

前面是Django核心提供的命令项,下面则是一些内置app,比如auth等提供的命令项。它们只在对应的app启用的时候才可用。

changepassword 
createsuperuser 
clearsessions 
collectstatic

Django manage.py 命令详解的更多相关文章

  1. Django django-admin.py 命令详解

    一.Django 基本命令 下载 Django pip3 install django     # 默认下载最新版 pip3 install django==4.1  # 手动选择版本 创建Djang ...

  2. Django settings.py 配置文件详解

    settings.py 配置文件 import os BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) #引 ...

  3. python后台架构Django教程——manage.py命令

    一.manage.py命令选项 manage.py是每个Django项目中自动生成的一个用于管理项目的脚本文件,需要通过python命令执行.manage.py接受的是Django提供的内置命令. 内 ...

  4. Django编写自定义manage.py 命令

    官网文档地址:编写自定义 django-admin 命令 金句: 你所浪费的今天,正是昨天死的人所期待的明天. 开篇话: python manage.py <command> 的命令我们用 ...

  5. Dockerfile 命令详解及最佳实践

    Dockerfile 命令详解 FROM 指定基础镜像(必选) 所谓定制镜像,那一定是以一个镜像为基础,在其上进行定制.就像我们之前运行了一个 nginx 镜像的容器,再进行修改一样,基础镜像是必须指 ...

  6. linux chmod 命令详解(转)

    Ubuntu下修改目录权限需要先用 sudo 来获得管理员权限,格式如下: sudo chmod 600 ××× (只有所有者有读和写的权限)sudo chmod 644 ××× (所有者有读和写的权 ...

  7. 【官方文档】Nginx模块Nginx-Rtmp-Module学习笔记(一) RTMP 命令详解

    源码地址:https://github.com/Tinywan/PHP_Experience 说明: rtmp的延迟主要取决于播放器设置,但流式传输软件,流的比特率和网络速度(以及响应时间“ping” ...

  8. linux shell 脚本攻略学习13--file命令详解,diff命令详解

    一.file命令详解 find命令可以通过查看文件内容来找出特定类型的文件,在UNIX/ Linux系统中,文件类型并不是由文件扩展名来决定的(windows中却正是这么做的),file命令的目的是从 ...

  9. linux shell 脚本攻略学习5---find命令详解

    1.find命令详解 语法: find base_path#base_path可以是任何位置,find会从该位置向下找 实例: amosli@amosli-pc:~$ find /home/amosl ...

随机推荐

  1. (零)机器学习入门与经典算法之numpy的基本操作

    1.根据索引来获取元素* 创建一个索引列表ind,用来装载索引,当numpy数据是一维数据时:一个索引对应的是一个元素具体的例子如下: import numpy as np # 数据是一维数据时:索引 ...

  2. 初识Java GUI

    1. 使用Java  Swing 显示的窗口如下 在原有代码基础上添加代码实现对窗口大小 标题等信息

  3. REST 表现层状态转化

    1.REST是什么? 1) REST:即 Representational State Transfer.(资源)表现层状态转化.是目前最流行的一种互联网软件架构.它结构清晰.符合标准.易于理解.扩展 ...

  4. 阿里云 python3 使用duplicity

    前言 公司业务中使用的备份工具一直是alicloud-duplicity,一直也没研究.后来业务出问题了,看了看,原来是基于duplicity开发的,使用了半天,感觉很不错,我感觉他的特点有: 加密备 ...

  5. idea引入fastjson的jar包:ClassNotFound

    idea 手动添加fastjson的jar包时,既在项目依赖里添加了,又在WEB-INF下的lib库里添加了 但是启动后就是加载不到,报错:ClassNotFound 尝试了好久,也参考了网上的许多建 ...

  6. 基于SqlSugar的开发框架循序渐进介绍(12)-- 拆分页面模块内容为组件,实现分而治之的处理

    在早期的随笔就介绍过,把常规页面的内容拆分为几个不同的组件,如普通的页面,包括列表查询.详细资料查看.新增资料.编辑资料.导入资料等页面场景,这些内容相对比较独立,而有一定的代码量,本篇随笔介绍基于V ...

  7. day02-2

    JAVA入门 1.C&&C++ 1972年C诞生 贴近硬件,运行极快,效率极高 操作系统,编译器,数据库,网络系统等 指针和内存管理 1982年C++诞生 面向对象 兼容C 图形领域. ...

  8. 如何应对外包公司(文思海辉)的Python后端面试

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_151 最近春招如火如荼,我接触到的几位同学也纷纷去市场里试了试水,不得不说由于疫情的影响,导致目前中等水平的开发者择业有了些许困难 ...

  9. 海纳百川无所不容,Win10环境下使用Docker容器式部署前后端分离项目Django+Vue.js

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_179 随着现代化产品研发的不断推进,我们会发现,几乎每个产品线都会包含功能各异的服务,而且服务与服务之间存在也会存在着错综复杂的依 ...

  10. PostgreSQL 备份

    # WAL日志: # 我们对数据库的增删改查创建之前先是将sql语句记录在WAL日志中, # 只有日志记录刷新到磁盘后,才能写入数据库文件. # 遵从这个过程,不需要在每个事务提交时都刷新数据页到数据 ...