1.编程模式
MVC
MTV:Model+Template+View
分发器
地址栏输入地址->url控制器->匹配不同的视图->Models->数据库->Models->View->Templates->浏览器
2.安装
Django于Python版本对应
Django-Python
1.8 2.7,3.2, 3.3, 3.4, 3.5
1.9 1.10 2.7, 3.4, 3.5
1.11 2.7-3.6
2.0 3.4 3.5 3.5
2.1 3.5 3.6
从官网下载python,安装,注意安装时选中添加环境变量
安装Django,看到网上好多使用 pip install Django的安装命令,我这里总失败,从网上找了个镜像,超快
pip install -i https://pypi.douban.com/simple django
安装完成验证:进入python环境,
>>>import django
>>>django.get_version()
3.新建工程
4.配置数据库
Django默认使用的是SQLite数据库
在settings.py文件中,通过DATABASE选项来进行数据库配置
配置mysql-python3.x安装的是pyMySQL
|-在__innit__.py文件中写入两行代码
| import pymysql
| pymysql.install_as_MySQLdb()
|-在settings.py中修改(见下图)
5.创建应用
在一个项目中可以创建多个应用,每个应用进行一种业务处理
目录介绍
admin.py 站点配置
models.py 模型
views.py 视图
创建好这个应用后要进行激活(将应用配置到到项目中)
6.定义模型
模型有一个数据表就对应一个模型,新建两个类
注意,不需要定义主键
生成数据库中的表,可以手动创建,也可以用代码生成
生成迁移文件,再执行迁移
填坑:这里有可能会产生2个错误
1.报错
打开提示的这个文件,注释掉报错的这个提示
2.报错
修改外键
原因可参考这篇文章https://www.cnblogs.com/phyger/p/8035253.html
生产迁移文件后再执行迁移
这样就新建了两个表
7.测试数据操作
进入python shell环境:python manage.py shell
引入包
from myApp.models import Grades,Students
from django.utils import timezone
from datetime import *
上面通过模型类操作数据
添加数据,本质是创建一个模型类的对象实例
查询数据
Grades.objects.get(pk=2)
Grades.objects.all()
修改数据
g=Grades.objects.get(pk=2)
g.sname = "python1"
g.save()
删除数据
g.delete()
新建一个学生对象
stu = Student()
stu.sname = "cyp"
stu.sage=20
stu.scontend="我叫cyp"
stu.sgrade = g
stu.save()
g.students_set.all()可以看到所有班级的学生 对象名.关联的类名小写_set.all()
通过外键创建对象,不需要保存,直接存数据库
g.students_set.create(sname=u'刘德华',sgender=True,sage = 40,scontend=u'我叫刘德华')