Django学习笔记

来源:互联网 发布:孙振耀。知乎 编辑:程序博客网 时间:2024/06/05 21:13

1.新建一个 django project

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

2.新建 app

python manage.py startapp app_name或 django-admin.py startapp app_name

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

Django 1.7.1及以上 用以下命令# 1. 创建更改的文件python manage.py makemigrations# 2. 将生成的py文件应用到数据库python manage.py migrate

4.使用开发服务器

python manage.py runserver# 当提示端口被占用的时候,可以用其它端口:python manage.py runserver 8001python 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.清空数据库

python manage.py flush

6.创建超级管理员

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

7.导出数据 导入数据

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

8.Django 项目环境终端

python manage.py shell

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

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

python manage.py dbshell

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

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

谈谈机制:migrations机制有两个指令,

第一个是makemigrations,
makemigrations指令是,用models里面的model和当前的migrations代码里面的model做对比,如果有新的修改,就生成新的migrations代码,

第二个是migrate,
migrate指令是用migrations目录中代码文件和django数据库djaong_migrations表中的代码文件做对比,
如果表中没有,那就对这些没有的文件按顺序及依赖关系做migrate apply,然后再把代码文件名加进migrations表中。
11. django 安装
pip install django
12. 后台css无法显示
参考这个方法解决了http://blog.csdn.net/lqslm/article/details/72896012
http://blog.csdn.net/Arthur__Wong/article/details/72575468