单表查询

查询名字叫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 @   朱饱饱  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示