Django 基本命令

Django 基本命令

« Django 环境搭建html

Django 视图与网址 »python

当前这篇教程考虑了 Django 1.4 - Django 2.0 版本差别。shell

打开 Linux 或 MacOS 的 Terminal (终端)直接在 终端中输入这些命令(不是 python 的 shell中)数据库

若是是 windows 用 cmd(开始 搜索 cmd 或者 快捷键 win + R,输入 cmd) 直接在 cmd 上操做。django

1. 新建一个 django project

1json

2windows

django-admin.py startproject project_name服务器

特别是在 windows 上,若是报错,尝试用 django-admin 代替 django-admin.py 试试app

注意 project_name 是本身的项目名称,须要为合法的 Python 包名,如不能为 1a 或 a-b。工具

2. 新建 app

要先进入项目目录下,cd project_name 而后执行下面的命令(下同,已经在项目目录下则不须要 cd project_name)

1

2

python manage.py startapp app_name

或 django-admin.py startapp app_name

通常一个项目有多个app, 固然通用的app也能够在多个项目中使用。

与项目名相似 app name 也须要为合法的 Python 包名,如 blog,news, aboutus 等都是合法的 app 名称。

3. 建立数据库表 或 更改数据库表或字段

1

2

3

4

5

6

7

8

9

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。

备注:对已有的 models 进行修改,Django 1.7以前的版本的Django都是没法自动更改表结构的,不过有第三方工具 south,详见 Django 数据库迁移 一节。

4. 使用开发服务器

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

1

2

3

4

5

6

7

8

9

10

11

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

5. 清空数据库

1

python manage.py flush

此命令会询问是 yes 仍是 no, 选择 yes 会把数据所有清空掉,只留下空表。

6. 建立超级管理员

1

2

3

4

5

6

python manage.py createsuperuser

 

# 按照提示输入用户名和对应的密码就行了邮箱能够留空,用户名和密码必填

 

# 修改 用户密码能够用:

python manage.py changepassword username

7. 导出数据 导入数据

1

2

python manage.py dumpdata appname > appname.json

python manage.py loaddata appname.json

关于数据操做 详见:数据导入数据迁移,如今了解有这个用法就能够了。

8. Django 项目环境终端

1

python manage.py shell

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

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

9. 数据库命令行

1

python manage.py dbshell

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

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

10. 更多命令

1

终端上输入 python manage.py 能够看到详细的列表,在忘记子名称的时候特别有用。

更详细的介绍,点击对应版本去官网查看: 1.11    1.8    dev

相关文章
相关标签/搜索