Django常用语句

时间:2022-07-25
本文章向大家介绍Django常用语句,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

本篇主要介绍我们在使用django框架开发的时候使用的常用语句,为了增加开发效率,建议将这些语句记住并多多练习,

开始

新建工程

django-admin startproject project-name

这是一个django开发的开始,当然也可以用pycharm这个ide创建工程,这个东西还是看个人习惯了。但最好还是记住,

  • project-name —— 项目名称(需要符合Python 的变量命名规则(以下划线或字母开头))
  • 有些版本的django可能是django-admin.py(根据个人需求选择)

新建app

python manage.py startapp app-name
#或者还可以这样
django-admin.py startapp app-name

这是新建一个app,利用pycharm这个ide暂时我不知道怎么新建app,如果有读者知道的话,请在评论区告知我。

  • app-name —— 应用名称
  • 根据项目的需求选择新建app的数量,每次都是执行同样的语句。
  • 我们需要在项目的settings中的INSTALLED_APPS中添加我们所创建的app

同步数据库

python manage.py makemigrations
python manage.py migrate

这两句代码的功能是同步数据库,我们在项目的settings中的DATABASES中设置好数据库各种参数,在app的models.py中创建我们所需要的字段,输入以上两条语句,django就自动帮我们自动生成了相应的数据表

  • 以上代码是在django1.7以上用的
  • 如果是django1.7以下版本请使用python manage.py syncdb
  • 对已有的 models 进行修改,Django 1.7之前的版本的Django都是无法自动更改表结构的,不过有第三方工具 south
  • django1.7以上的版本已经集成south

使用测试服务器

python manage.py runserver
 
# 当提示端口被占用的时候,可以用其它端口:
python manage.py runserver 8001
python manage.py runserver 9999
(当然也可以kill掉占用端口的进程)
 
# 监听所有可用 ip (电脑可能有一个或多个内网ip,一个或多个外网ip,即有多个ip地址)
python manage.py runserver 0.0.0.0:8000
# 如果是外网或者局域网电脑上可以用其它电脑查看开发服务器
# 访问对应的 ip加端口,比如 http://172.16.20.2:8000

以上代码可以开始调式,打开浏览器显示我们所在代码中修改的效果

  • 在cmd中输入python manage.py runserver 会打开默认打开127.0.0.1:8000, 默认只监听本地ip
  • 也可以用pycharm中的运行django,(这里会监听所有ip)
  • 开发服务器,即开发时使用,一般修改代码后会自动重启,方便调试和开发,但是由于性能问题,建议只用来测试,不要用在生产环境

清空数据库

python manage.py flush

当你发现自己的数据库中的数据有问题时,就需要执行以上语句,可以清空数据库,但是保留数据库的结构

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

创建超级管理员

python manage.py createsuperuser

django很好的一点就是自带了后台管理功能,但是我们去使用的时候还是需要创建超级管理员,去管理后台

  • 按照提示输入用户名和对应的密码就好了邮箱可以留空,用户名和密码必填

修改 用户密码可以用:

python manage.py changepassword username

导出数据 导入数据

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

这两条数据我们不是很常用 ,知道即可

Django 项目环境终端

python manage.py shell

你可以在这个 shell 里面调用当前项目的 models.py 中的 API,对于操作数据,还有一些小测试非常方便

  • 这里推荐安装 bpython 或 ipython通过pip安装即可 pip install ipython
  • bpython 或 ipython有一些代码提示和语法高亮的功能,比较好用,这是ipython的效果

注:

  • 上述代码在django1.7Python2.7中编译成功运行,其他环境请自行测试
  • 上述文字皆为个人看法,如有错误或建议请及时联系我