我知道要选择一个相关的对象应该做object.related_set.all()
。然而在我的情况下,这产生了一个AttributeError,所以很难调试。下面是设置:在Django中通过外键选择相关字段
class Action(models.Model):
...
class FieldDiff(models.Model):
action = models.ForeignKey(Action, editable=False, related_name='Action')
,并且在Shell:
In [16]: act = Action.objects.get(pk=34)
In [17]: act.fielddiff_set.all()
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
/home/ipantuyev/progs/ccc_app/<ipython console> in <module>()
AttributeError: 'Action' object has no attribute 'fielddiff_set'
我想这与从驼峰翻译做。我可以解决这个问题,但是这个代码会从模板中调用,所以我宁愿没有额外的逻辑。
谢谢你们。应该抓住那个。 – 2012-01-30 22:17:49