关于设计具有“独占”外键关系的django模型的建议

时间:2010-10-27 16:12:36

标签: python django-models

我想设计一个可以与Project Models,另一个X模型和其他Task模型相关联的Task模型。显而易见的选择是外键,但我希望该任务模型的任何特定实例仅与这些模型类型中的一个相关联,也就是说,如果任务模型与项目模型有关系,则它不能有关系与另一个任务模型,等等。什么是最好的代表方式的建议?感谢。

2 个答案:

答案 0 :(得分:0)

看看Generic relation。它允许您在多个模型上定义外键。这样,您的任务只与您的某个模型相关联。

答案 1 :(得分:0)

我所做的是从我的所有模型的基类继承与任务相关的基类。任务模型使用unique = True指向ForeignKey上的基类,似乎所有子类都继承了该关系。感谢。