在终端(虚拟环境内)直接输入这些命令,而不是在python的shell中。

新建一个 Django Project

  1. django-admin.py startproject project_name

必须要先建立一个项目,然后通过这个项目去管理下面的 APP。

新建 APP

要进入 project_name 然后执行下面的命令

  1. python manage.py startapp app_name

或者 django-admin.py startapp app_name
这个 APP 才是网站的内容。一般一个项目有多个app, 通用的app也可以在多个项目中使用。

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

  1. python manage.py migrate

使用开发服务器

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

清空数据库

  1. python manage.py flush

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

创建超级管理员

  1. python manage.py createsuperuser
  2. #按照提示输入用户名和对应的密码就好了,邮箱可以留空,用户名和密码是必填项。
  3. python manage.py changepasseord username
  4. # 修改 username的用户密码

导出数据 导入数据

  1. python manage.py dumpdata appname > appname.json
  2. python manage.py loaddata appname.json

# Django 项目环境终端

  1. python manage.py sehll

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

9. 数据库命令行

  1. python manage.py dbshell

Django 会自动进入在settings.py中设置的数据库,如果是 MySQL 或 postgreSQL,会要求输入数据库用户密码。
在这个终端可以执行数据库的SQL语句。如果您对SQL比较熟悉,可能喜欢这种方式。

更多命令

  1. python manage.py