我希望获得一个与模型A关联的模型A的对象列表,例如,模型B,例如食客(A)确认参加一顿饭(B)。但我不确定应该使用什么吸气剂。我实际上想要这样做以在管理面板中显示关联的对象。下面的方法是我做的一次尝试失败。
class Meal(models.Model):
diners = models.ManyToManyField(User, through='Attendance', related_name="eating", blank=True)
def diners(self):
return self.eating
你能帮忙吗?
感谢
答案 0 :(得分:1)
正如ilvar建议的那样,删除diners方法并使用self.diners.all()来获取Meal方法中的对象。 related_name ='eating'用于获取用户的就餐,反之。
答案 1 :(得分:0)
我到达此页时遇到与OP相同的问题。我最后只是删除了我的管理模型中list_display
中对ManyToMany字段的引用。结果:在该应用程序的管理页面上,在ManyToMany字段名称下,出现了一个格式良好的多选列表小部件,其中显示了我的ManyToMany关系的可能值。
所以解决方案是删除list_display
中的引用并让Django处理它。这是Django 1.4.3。