Django - 自定义向后关系

时间:2015-04-28 14:49:53

标签: django django-rest-framework foreign-key-relationship

设置属于 Office 。每次更新设置时,我在数据库中创建一个新条目,将旧设置传递给active = False,将新设置传递给active = true。所以每个办公室一次只有一个活动设置(我这样做是因为我不想跟踪旧设置)。

现在我需要的是一种通过Office对象访问此设置的方法。 目前我正在使用向后关系 office.setting_set 访问它。

我正在使用Django-Rest-Framework所以我需要一个可序列化的字段。 在我的序列化程序中,我调用:office.setting_set。在常规django我可能会做office.setting_set.filter(active = True)但我不能在序列化器中这样做...

理想的是一个自定义模型字段,我会称之为:

office.active_setting

知道如何实现这个目标吗?

1 个答案:

答案 0 :(得分:0)

您可以使用model methods。该方法可能类似于以下内容:

def active_setting(self):
    return self.setting_set.get(active=True)