单表查询

查询名字叫xxx的书

from app01 import models
def books(request):
# models.Book.objects.create(name='xxx',price=10.34,publish='南京出版社')
#
#
# book=models.Book(name='yyy',price=11.34,publish='南京出版社')
# book.save()

# 查询所有
res=models.Book.objects.all()
print(res)
# 查询名字叫xxx的书(是个列表:QuerySet)
res = models.Book.objects.filter(name='xxx')

公式:filter(key=value,key=value)
res = models.Book.objects.filter(name='xxx')[0] #取第一个,列表取值,前提是有且仅有一个,不然不符合这个条件都抛异常
res = models.Book.objects.filter(name='xxx').first()#取第一个

# 查询名字叫xxx的书(就是book对象),如果没有或者由多个,都报错
# 查询结果必须有且仅有一个才正常,否则报错
res=models.Book.objects.get(name='sss')

#

print(res.name)
return HttpResponse('两本书保存成功')

 

外键关系要不要建立

1 关联字段与外键约束没有必然的联系(建管理字段是为了进行查询,建约束是为了不出现脏数据)
2 默认情况,关联关系建好以后,外键约束就自然建立了
3 实际工作中,外键约束一般不建(影响效率),都是人为约束(代码约束)
-db_constraint=False
4 表模型和数据库表的对应,不要直接修改表(这是可以的,但是不建议),要修改表模型,同步到表中

posted @ 2023-11-27 19:20  朱饱饱  阅读(9)  评论(0)    收藏  举报