具有基于外键的动态字段的Django模型

时间:2019-07-04 18:56:41

标签: django django-models

我正在尝试实现一个模型,该模型中应仅基于模型中的外键以字段形式显示字段的子集。 字段的总数相对较低(〜20),但是可能会因外键的值不同而经常变化。 我想使用诸如单表继承之类的东西,但要使用单个模型(无继承)。我查看了现有的eav,动态模型包...但是它们似乎不符合我的需求。
我的部分要求是,我想通过sql来查询模型而没有太多的联接。

这是一个用例,表示根据申请请求(rfa)授予的申请。员工需要在管理员中输入rfa,最终用户可以创建应用程序。

application class
    rfa (request for application): foreign key
    field_1
    ...
    field_20
rfa class:
    app_fields (coma separated list of field names)

在表单中,对于特定的rfa,仅app_fields中的字段应该可见。

我的rfa部分覆盖了django-separatedvaluesfield,我想知道如何实现应用程序页面,以便它们与前端和admin中的通用视图一起使用,并使其干燥。

对于更新视图,我可以在应用程序模型中有一个方法,但是由于未为create定义rfa,因此不适用于create:

def get_current_app_fields(self):
    return self.rfp.app_fields

关于实现前端视图和管理的最佳DRY策略的任何想法吗?

谢谢。

0 个答案:

没有答案