python后台架构Django教程——manage.py命令
一、manage.py命令选项
manage.py是每个Django项目中自动生成的一个用于管理项目的脚本文件,需要通过python命令执行。manage.py接受的是Django提供的内置命令。
内置命令包含
- check
- dbshell
- diffsettings
- flush
- makemigrations
- migrate
- runserver
- shell
- startapp
- startproject
- test
其实有三种方式,可以在cmd窗口中执行Django提供的内置命令:
$ django-admin <command> [options]
$ python manage.py <command> [options]
$ python -m django <command> [options]
- 1
- 2
- 3
其中
1、django-admin是用于管理Django的命令行工具集,当我们成功安装Django后,在操作系统中就会有这个命令,但是根据安装方式或者系统环境的不同,你可能需要配置一下调用路径。在Linux下,该命令一般位于site-packages/django/bin,最好做一个链接到/usr/local/bin,方便调用。Windows下可以配置系统环境变量
2、manage.py则是每个Django项目中自动生成的一个用于管理项目的脚本文件,需要在cmd窗口中cd到Django项目的manage.py所在的目录后通过python命令执行。
其中的command是Django内置的或者你自定义的命令。
当然你可以在在pycharm中启动manage.py时设置参数。
1. check
检查整个Django项目是否存在常见问题。
默认情况下,所有应用都将被选中。可以通过提供app的名字检查指定的应用:
python manage.py check app1
- 1
2. diffsettings
python manage.py diffsettings
- 1
显示当前设置文件与Django的默认设置之间的差异。
3. flush
python manage.py flush
- 1
从数据库中删除所有数据。已应用的迁移不会被清除。只删除具体数据,不删除数据表!
如果您希望从空数据库启动并重新运行所有迁移,则应该删除并重新创建数据库,然后再运行migrate,这样会连原来的数据表都删了。
4. makemigrations
python manage.py makemigrations app1 app2
- 1
根据检测到的模型创建新的迁移。迁移的作用,更多的是将数据库的操作,以文件的形式记录下来,方便以后检查、调用、重做等等。尤其是对于Git版本管理,它无法获知数据库是如何变化的,只能通过迁移文件中的记录来追溯和保存。
5. migrate
python manage.py migrate
- 1
使数据库状态与当前模型集和迁移集同步。说白了,就是将对数据库的更改,主要是数据表设计的更改,在数据库中真实执行。例如,新建、修改、删除数据表,新增、修改、删除某数据表内的字段等等。
6. runserver
python manage.py runserver
- 1
启用Django为我们提供的轻量级的开发用的Web服务器。默认情况下,服务器运行在IP地址127.0.0.1的8000端口上。如果要自定义服务器端口和地址,可以显式地传递一个IP地址和端口号给它。
python manage.py runserver 127.0.0.1:8080
- 1
7. shell
python manage.py shell
- 1
启动带有Django环境的Python交互式解释器,也就是命令行环境。默认使用基本的python交互式解释器。这个命令非常常用,是我们测试和开发过程中不可或缺的部分!
8. startapp
python manage.py startapp app_name
- 1
创建新的app。
默认情况下,会在这个新的app目录下创建一系列文件模版,比如models.py、views.py、admin.py等等。
9. startproject
python manage.py startproject project_name
- 1
新建工程。默认情况下,新目录包含manage.py脚本和项目包(包含settings.py和其他文件)。
10. test
python manage.py test [test_label [test_label ...]]
- 1
运行所有已安装的app的测试代码。
二、app提供的命令
前面是Django核心提供的命令项,下面则是一些内置app,比如auth等提供的命令项。它们只在对应的app启用的时候才可用。
changepassword
createsuperuser
clearsessions
collectstatic
三、 共有参数
–pythonpath PYTHONPATH
–settings SETTINGS
–traceback
–verbosity {0,1,2,3}, -v {0,1,2,3}
–no-color
python后台架构Django教程——manage.py命令的更多相关文章
- Django manage.py 命令详解
manage.py 查看命令的作用的语句 C:\Users\Administrator> python manage.py help Type 'manage.py help <subco ...
- Django编写自定义manage.py 命令
官网文档地址:编写自定义 django-admin 命令 金句: 你所浪费的今天,正是昨天死的人所期待的明天. 开篇话: python manage.py <command> 的命令我们用 ...
- django系列 1 :python+django环境搭建 +mac提示找不到manage.py命令
1.安装python3 2.设置python3的环境变量 3.进入命令行模式,输入 pip install django 1.10.3 4.验证是否安装完成 pip show django 5.dja ...
- 【Django】如何自定义manage.py命令? 达到启动后台进程的目的?
代码: #-*- coding:utf- -*- """ The handle active user mail send """ from ...
- python manage.py 命令
在用命令django‐admin.py startproject <工程目录>建立一个django工程文件时,会生成一个manage.py文件,那么这个manage.py到底可以干嘛呢? ...
- Python后台开发Django(数据库)
如果使用pymysql,则可以在view中直接import pymysql进行操作,与原操作无区别 Django数据库框架支持 sqlite3, MySQL, PostgreSQL等数据库,只需要在s ...
- Python后台开发Django(启动)
Django版本为:2.1.7 Python的web框架,MTV思想 MVC Model(模板文件,数据库操作) view(视图模板文件 )controller(业务处理) MTV Model(模 ...
- Django笔记 manage.py脚本的使用
1. 管理Django项目 python manage.py startproject projectname # 新建Django project ~~projectname是自己的项目名称 pyt ...
- 使用django-extension扩展django的manage――runscript命令
摘要:1.下载安装 1)$easy_installdjango-extensions 2)在INSTALLED_APP中添加'django_extensions'[python]INSTALL ...
随机推荐
- 邮箱大师WPZ协议包
WIRELESS Z PACKET: i8-version(WZPUnit.getVersion() & 3 | WZPUnit.MAGIC_MASK = 1 & 3 | -48 = ...
- SpringBoot开启https以及http重定向
一.使用JDK keytool创建SSL证书 进入$JAVA_HOME/bin目录,运行以下命令 keytool -genkey -alias WeChatAppletsDemo -keypass - ...
- 最简单的PHP开发环境搭建
近期发现一个非常easy的,适合刚開始学习的人的PHP开发环境,整个环境仅仅有三样东东,PHP ,APACHE , MYSQL可是对于初学PHP的人来说,己经足够了. 假设有兴趣的话能够直接去百度PN ...
- 【BZOJ3611】[Heoi2014]大工程 欧拉序+ST表+单调栈
[BZOJ3611][Heoi2014]大工程 Description 国家有一个大工程,要给一个非常大的交通网络里建一些新的通道. 我们这个国家位置非常特殊,可以看成是一个单位边权的树,城市位于顶 ...
- rtsp转rtmp、hls网页直播服务器EasyNVR前端兼容性调试:ie下的 pointer-events- none
发现问题: 之前在做EasyNVR 的web页面开发过程中,力求的都是一个播放效果的.功能的展示.对于兼容性也有注意,但有些细节还是难免有所疏忽. 内部测试发现:由于我们是流媒体的实时视频直播,在we ...
- java 对象变量 c++对象指针 初始化对象变量的2中方法
java 对象变量 c++对象指针 java null引用 c++ null指针 Date deadline 是 对象变量,它可以引用Date类型的对象,但它不是一个对象,实际上它也没有引用对象. ...
- 2-phase-commit 3-phase-commit
2 prepare commit rollback acknowledge
- php计算数组的维数
function array_dim($arr){ if(!is_array($arr)) return 0; else{ $max1 = 0; foreach($arr as $item1){ $t ...
- Python爬虫--Requests库
Requests Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库,requests是python实现的最简单易用的HTTP库, ...
- Struts2问题总结
1 如何搭建Struts2开发环境? Struts2 获取 http://struts.apache.org/download.cgi Struts-2.3.16.3-all.zip 创建Web项 ...