Python中的Django基本命令实例详解


Posted in Python onJuly 15, 2018

一、新建项目

$django-admin.py  startproject  project_name

# 特别是在 windows 上,如果报错,尝试用 django-admin 代替 django-admin.py 试试

注意 project_name 是自己的项目名称,需要为合法的 Python 包名,如不能为 1a 或 a-b。

二、新建APP

要先进入项目目录下,cd project_name 然后执行下面的命令;
$ python manage.py startapp app_name
或 django-admin.py startapp app_name

一般一个项目有多个app,当然通用的app也可以在多个项目中使用。
 与项目名类似app name也需要为合法的Python 包名,如blog,news,aboutus等都是合法的app名称;

三、创建数据库表或更改数据表或字段

Django 1.7.1及以上 用以下命令

# 1. 创建更改的文件
$python manage.py makemigrations
# 2. 将生成的py文件应用到数据库
$python manage.py migrate

旧版本的Django 1.6及以下用

$python manage.py syncdb

这种方法可以在SQL等数据库中创建与models.py代码对应的表,不需要自己手动执行SQL

四、使用开发服务器

开发服务器,即开发时使用,一般修改代码后会自动重启,方便调试和开发,但是由于性能问题,建议只用来测试,不要用在生产环境。

$python manage.py runserver
 # 当提示端口被占用的时候,可以用其它端口:
$python manage.py runserver 8001
$python manage.py runserver 9999
(当然也可以kill掉占用端口的进程,具体后面有讲,此处想知道的同学可查下 lsof 命令用法)
# 监听机器所有可用 ip (电脑可能有多个内网ip或多个外网ip)
$python manage.py runserver 0.0.0.0:8000
# 如果是外网或者局域网电脑上可以用其它电脑查看开发服务器
# 访问对应的 ip加端口,比如 http://172.16.20.2:8000

五、清空数据库

$python manage.py flush

此命令会询问是yes or no,选择yes会把数据全部清空掉,只留下空表

六、创建超级管理员

$python manage.py createsuperuser
# 按照提示输入用户名和对应的密码就好了邮箱可以留空,用户名密码必填
# 修改 用户密码可以用:
$python manage.py changepassword username

七、导出数据,导入数据

$python manage.py dumpdata appname > appname.json
$python manage.py loaddata appname.json

八、Django 项目环境终端

$python manage.py shell

如果你安装了 bpython 或 ipython 会自动用它们的界面,推荐安装 bpython。

这个命令和 直接运行 python 或 bpython 进入 shell 的区别是:你可以在这个 shell 里面调用当前项目的 models.py 中的 API,对于操作数据,还有一些小测试非常方便。

九、数据库命令行

$python manage.py dbshell

Django 会自动进入在settings.py中设置的数据库,如果是 MySQL 或 postgreSQL,会要求输入数据库用户密码。

在这个终端可以执行数据库的SQL语句。如果您对SQL比较熟悉,可能喜欢这种方式。

十、更多命令

mysite python3.6 manage.py
Type 'manage.py help <subcommand>' for help on a specific subcommand.
Available subcommands:
[auth]
  changepassword
  createsuperuser
[contenttypes]
  remove_stale_contenttypes
[django]
  check
  compilemessages
  createcachetable
  dbshell
  diffsettings
  dumpdata
  flush
  inspectdb
  loaddata
  makemessages
  makemigrations
  migrate
  sendtestemail
  shell
  showmigrations
  sqlflush
  sqlmigrate
  sqlsequencereset
  squashmigrations
  startapp
  startproject
  test
  testserver
[sessions]
  clearsessions
[staticfiles]
  collectstatic
  findstatic
  runserver

总结

以上所述是小编给大家介绍的Python中的Django基本命令实例详解,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
python使用内存zipfile对象在内存中打包文件示例
Apr 30 Python
python实现合并两个数组的方法
May 16 Python
对python中return和print的一些理解
Aug 18 Python
使用DataFrame删除行和列的实例讲解
Apr 08 Python
python实现顺序表的简单代码
Sep 28 Python
Python实现定制自动化业务流量报表周报功能【XlsxWriter模块】
Mar 11 Python
PyQt4实时显示文本内容GUI的示例
Jun 14 Python
python实现socket+threading处理多连接的方法
Jul 23 Python
python或C++读取指定文件夹下的所有图片
Aug 31 Python
解决pytorch报错:AssertionError: Invalid device id的问题
Jan 10 Python
浅析Python中的套接字编程
Jun 22 Python
Python 第三方库 openpyxl 的安装过程
Dec 24 Python
完美解决python中ndarray 默认用科学计数法显示的问题
Jul 14 #Python
python爬取哈尔滨天气信息
Jul 14 #Python
Python for循环中的陷阱详解
Jul 13 #Python
Python框架Flask的基本数据库操作方法分析
Jul 13 #Python
Python使用pickle模块实现序列化功能示例
Jul 13 #Python
mac下如何将python2.7改为python3
Jul 13 #Python
Python面向对象程序设计之继承与多继承用法分析
Jul 13 #Python
You might like
一个PHP+MSSQL分页的例子
2006/10/09 PHP
php 读取文件乱码问题
2010/02/20 PHP
PHP file_exists问题杂谈
2012/05/07 PHP
php实现购物车功能(上)
2020/07/23 PHP
Symfony2中被遗弃的getRequest()方法分析
2016/03/17 PHP
PHP数组内存利用率低和弱类型详细解读
2017/08/10 PHP
jQuery AJAX回调函数this指向问题
2010/02/08 Javascript
javascript textarea光标定位方法(兼容IE和FF)
2011/03/12 Javascript
显示今天的日期js代码(阳历和农历)
2014/09/30 Javascript
javascript 兼容各个浏览器的事件
2015/02/04 Javascript
实现音乐播放器的代码(html5+css3+jquery)
2015/08/04 Javascript
Bootstrap每天必学之按钮
2015/11/26 Javascript
JS、jQuery中select的用法详解
2016/04/21 Javascript
AngularJS应用开发思维之依赖注入3
2016/08/19 Javascript
将form表单通过ajax实现无刷新提交的简单实例
2016/10/12 Javascript
利用Angular+Angular-Ui实现分页(代码加简单)
2017/03/10 Javascript
Vue.js2.0中的变化小结
2017/10/24 Javascript
vue组件编写之todolist组件实例详解
2018/01/22 Javascript
在HTML文档中嵌入JavaScript的四种方法
2018/05/07 Javascript
vue+axios+promise实际开发用法详解
2018/10/15 Javascript
基于vue写一个全局Message组件的实现
2019/08/15 Javascript
如何在vue中使用百度地图添加自定义覆盖物(水波纹)
2020/11/03 Javascript
vue 动态添加的路由页面刷新时失效的原因及解决方案
2021/02/26 Vue.js
[46:43]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第三局
2016/02/28 DOTA
Win8.1下安装Python3.6提示0x80240017错误的解决方法
2018/07/31 Python
pytorch中的卷积和池化计算方式详解
2020/01/03 Python
Python 如何在字符串中插入变量
2020/08/01 Python
CSS3制作缩略图的详细过程
2016/07/08 HTML / CSS
利用HTML5实现使用按钮控制背景音乐开关
2015/09/21 HTML / CSS
印度网上购物首选目的地:Flipkart
2016/08/01 全球购物
文秘专业大学生求职信
2013/11/10 职场文书
应用英语专业自荐信
2014/01/26 职场文书
安全生产承诺书范文
2014/05/22 职场文书
2015年学校关工委工作总结
2015/04/03 职场文书
TensorFlow中tf.batch_matmul()的用法
2021/06/02 Python
mysql备份策略的实现(全量备份+增量备份)
2021/07/07 MySQL