Django对于模型的数据操作
一、引入模型的包
1 from myApp.models import Grades,Students
二、查询所有数据
#objecs是类的隐藏属性;类名.objects.all()可以查询所有数据 Grades.objects.all()
三、添加数据(本质:创建一个模型类的对象实例)
注意:不用 def __init__(self) 是因为被占用
1 from myApp.models import Grades,Students 2 3 grade1 = Grades() 4 grade1.gname = "python04" 5 grade1.gdate = datetime(year=2017, month=7, day=17) 6 grade1.ggirlnum = 3 7 grade1.gboynum = 70 8 grade1.save() # 模型和数据库交互,存储数据
四、查看某个对象
# 类名.objects.get(pk=2) Grades.objects.get(pk=2)
五、修改数据
1 # 模型对象.属性 = 新值 2 grade2.gboynum = 60 3 grade2.save()
六、删除数据
注意:这个是物理删除,数据库中表的数据会被删除
# 模型对象.delete() grade2.delete()
七、关联对象(将学生和班级关联)
grade1 = Grades.objects.get(pk=1)
# 创建学生对象 stu = Students() stu.name = "薛艳梅" stu.sgender = False stu.sage = 21 stu.scontend = "我叫薛艳梅" stu.sgrade = grade1 # 外键 stu.save()
需求一:获取python04班级的所有学生(获得关联对象的集合)
# 对象名.一对多的类名小写_set.all() grade1.students_set.all()
需求二:创建曾志伟,属于python04班级
注意:不需要save(),直接添加到数据库中
stu3 = grade1.students_set.create(sname=u'曾志伟',sgender=True,scontend=u'我叫曾志伟',sage=45)
完结