Django的基础命令:
1、新建一个Django Project
django-admin startproject [project_name]
注:所有路径不要有中文
2、新建一个App应用
python manage.py startapp [app_name]
3、创建数据库表或者更新数据库表
备注:在数据库中创建models.py代码对应对的数据库表。
4、使用本地开发服务器
python manage.py runserver 0.0.0.0:8000
在开发、测试的时候使用,一般在修改代码后会自动重启
5、清除数据库
python manage.py flush
6、创建admin管理员
python manage.py createsuperuser
7、导入导出数据
python manage.py dumpdata user > user.json
python manage.py loaddata user.json
在for循环中还有很多有用的东西,如下:
变量 描述
forloop.counter 索引从 1 开始算
forloop.counter0 索引从 0 开始算
forloop.revcounter 索引从最大长度到 1
forloop.revcounter0 索引从最大长度到 0
forloop.first 当遍历的元素为第一项时为真
forloop.last 当遍历的元素为最后一项时为真
forloop.parentloop 用在嵌套的 for 循环中,获取上一层 for 循环的 forloop
部署基础:
1、进程分析
ps uax | grep python 或者是 ps -ef | grep python
在输出的结果中回看到pid,他代表的是进程编号
2、通过查看 /proc/PID/ 目录的文件信息来得到这个进程的一些信息
tu@linux /proc/4491 $ sudo ls -ahl
3、向进程发送信号
kill PID 杀死一个进程,或者使用 kill -9 PID 强制杀死一个进程
kill -1 uwsgi 重启uwsgi 进程,对服务器没有影响
kill -1 NGINX_PID 重启nginx进程,对服务器没有影响
4、查看进程打开了哪些文件
sudo lsof -p PID
5、查看文件被哪个进程被使用
sudo lsof /path/to/file
6、端口分析
netstat -a
-a或--all 显示所有连接中的Socket,默认不显示 LISTEN 相关的。
-c或--continuous 持续列出网络状态,不断自动刷新输出。
-l或--listening 显示监听中的服务器的Socket。
-n或--numeric 直接使用IP地址,而不是展示域名
-p或--programs 显示正在使用Socket的程序进程PID和名称。
-t或--tcp 显示TCP传输协议的连接。
-u或--udp 显示UDP传输协议的连接。
7、查看端口占用情况
sudo lsof -i :80
8、ginx + uwsgi socket 的方式来部署 Django
1、运行开发服务器测试
python manage.py runserver
2、uwsgi --http :8001 --chdir /path/to/project --home=/path/to/env --module project.wsgi
这样就可以跑了,–home 指定virtualenv 路径,如果没有可以去掉。project.wsgi 指的是 project/wsgi.py 文件
注意事项:
1、在models中某个类的属性书boolenfiled,数据库中的字段类型为tinyint,使用open插入数据的时候,需要转为int类型