动态将外键从一种模型更改为另一种模型

时间:2019-06-14 20:16:18

标签: python-3.x django-models

我一直在稳步学习如何使用Django,并且在玩弄模型以了解如何操纵它们之间的关系。我有四个模型,我希望能够将三个模型中的两个与我的外键表(Choices)相关联,并随时更改该关系。在生产中,我想象用户会看到早餐,午餐和晚餐,旁边都有复选框,他们只能选择这三个中的两个,这将从外键表中确定哪些模型中确定。这两个选择将决定他们可以同时享用哪些餐点。

我已经制作了三个类,并试图使用一个外键表来容纳所有三个,并且只允许用户选择三个中的两个,但是我认为这将在数据库中留下很多未使用的空间。我愿意回答和提出建议。

class Breakfast(model.Model):
    # some implementation

class Lunch(model.Model):
    # some implementation

class Dinner(model.Model):
    # some implementation

class Choice(model.Model):
    choice1=  models.ForeignKey("X", blank=True, null=True) # Where X is the name of an interchaneable model above. 
    choice2=  models.ForeignKey("X", blank=True, null=True)

0 个答案:

没有答案