related_query_name是什么意思

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕美 2022-05-05 12:11:24

同学,你好!related_query_name是用本表外键关联的对象根据本表某些字段做筛选条件时要用到的名称,得到本表外键关联的对象。

例:

class Author(models.Model):
    name = models.CharField(verbose_name='姓名', max_length=50)
    age = models.IntegerField(verbose_name='年龄')

class Book(models.Model):
    name = models.CharField(verbose_name='书名', max_length=100)
    author = models.ForeignKey(Author, verbose_name='作者', related_name='bs', related_query_name='b')

#通过related_query_name查询书名为learn_python的作者

Author.objects.filter(b__name='learn_python') 

祝学习愉快!

  • 老师"b_name"指的是什么,写法不是 "Author.objects.filter('b.name'='learn_python')"吗?

    2023-04-18 20:24:38
  • 同学,你好!author 字段是Book与Author 表的关联字段,根据Book表中的name 字段,想获取到关联的author 表中的对象,可以用related_query_name  指定一个名称,举例为b 。b_name 指的是通过Book表中的name 字段查找到满足条件的Author 表中的对象,关联_字段名 是反向查询的固定用语法。

    祝学习愉快~


    2023-04-19 11:07:17
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师