【问题标题】:How to get inverse object relation when specified related_name指定related_name时如何获得逆对象关系
【发布时间】:2017-11-16 22:26:09
【问题描述】:

我有以下模型类似于 django 文档https://docs.djangoproject.com/en/1.11/ref/models/relations/ 中的关系:

class Employee(models.Model):  
    user = models.OneToOneField(User, blank=True, null=True)  
    company = models.ForeignKey('companies.Company', related_name='company', blank=True, null=True)
    brand = models.OneToOneField('companies.Brand', related_name='brand', blank=True, null=True)

我尝试像这样从品牌中获得员工:

attendees = Brand.objects.filter(pk=2)

for a in attendees:
    print a.employee

我得到错误:

“品牌”对象没有属性“员工”

我也试过了:

attendees = Brand.objects.filter(pk=2)

for a in attendees:
    print a.employee_set

然后得到:

“品牌”对象没有属性“employee_set”

如何从brand 获取employee

谢谢

【问题讨论】:

    标签: django django-models django-orm


    【解决方案1】:

    问题是相关名称:

    brand = models.OneToOneField('companies.Brand', related_name='brand')
    

    我改成:

    brand = models.OneToOneField('companies.Brand', related_name='employee')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-30
      • 2020-10-24
      • 2018-03-14
      • 2021-10-07
      相关资源
      最近更新 更多