1.生成迁移文件
在当前目录下键入命令行,生成迁移文件。
python manage.py makemigrations
1.1 迁移文件生成前
1.2 生成迁移文件
1.3 文件内容
2.执行迁移
2.1键入命令行
#与执行sql语句创建数据表一致
python manage.py migrate
2.2 执行过程
3.测试数据库
3.1 进入python shell
python manage.py shell
3.2 引入一些包
In [1]: from myApp.models import Grades,Student
In [2]: from django.utils import timezone
In [3]: from datetime import *
3.3 查询数据
In [4]: Grades.objects.all()
Out[4]: <QuerySet []>
3.4 添加数据
本质:创建一个模型类的实例对象
In [5]: grade1 = Grades()
In [6]: grade1.gname = "python01"
In [7]: grade1.get_data=datetime(year = 2017,month=7,day=17)
In [8]: grade1.ggirlnum = 3
In [9]: grade1.gboynum=70
In [10]: grade1.save()
#查询
In [12]: Grades.objects.all()
Out[12]: <QuerySet [<Grades: Grades object (1)>]>
3.5 查询某条数据
方法:类名.objects.get(pk = 1),附带约束条件
In [14]: Grades.objects.get(pk=1)
Out[14]: <Grades: Grades object (1)>
3.6 修改数据
方法:模型对象.属性= 新值
#修改值
In [15]: grade1.gboynum=88
#重新存储
In [16]: grade1.save()
3.7 删除数据
方法:模型对象.delete()
In[17]:grade1.delete()
物理删除,数据库中的表里的数据被彻底删除。
3.8 关联对象
In [17]: stu = Student()
In [18]: stu.sname = "张三"
In [19]: stu.sgender = "False"
In [20]: stu.sage = 20
In [21]: stu.scontend = "我的名字叫张三"
In [22]: stu.sgrade = grade1
In [23]: stu.save()
获得关联对象的集合:对象名.关联的类名小写_set.all()
#获取到班级为"python01"班级的所有学生
In [29]: grade1.student_set.all()
Out[29]: <QuerySet [<Student: Student object (1)>]>
3.9 直接创建学生对象,并且属于grade1班
In [31]: stu1 = grade1.student_set.create(sname=u"李四",sgender="True",sage=45,scontend=u"我叫李四")
In [32]: Student.objects.all()
Out[32]: <QuerySet [<Student: Student object (1)>, <Student: Student object (2)>]>