关于related_name和related_query_name的问题

来源:7-8 订单中心:订单详细信息

慕前端6257324

2020-06-10 14:05:07

什么时候用哪个,有点分不清。求解

写回答

1回答

好帮手慕笑蓉

2020-06-10

同学,你好。related_name和related_query_name是对关联对象取的名称,related_name用于反向查询时用到的名称,related_query_name用于反向过滤查询时用到的名称,如果related_name被定义,related_query_name没有被定义,那么related_query_name的默认值等于related_name定义的值,如;设置related_name='entries'

blog = ForeignKey(Blog, related_name='entries')
>>> b = Blog.objects.get(id=1)
>>> b.entries.all() 

>>> b.entries.filter(headline__contains='Lennon')
>>> b.entries.count()

related_name和related_query_name用到的名称都为entries,如果related_query_name被定义,则用其定义的名称,这两个可以一起用,也可以单独用,它们是用于不同查询时用到的名称。

如果解决了你的疑惑,请采纳,祝学习愉快~ 

0

0 学习 · 3562 问题

查看课程