如何建立这样的关系:
想象一个餐厅。他们的数据表中有一个用于食谱,一个用于配料。还有一个,包含晚餐、午餐、早餐、甜点、汤等食物类别。我们将其命名为 cat_food。
厨师想使用 cat_food 对食谱和配料进行排序。例如,在所有其他列中,从 recipes 到 cat_food 存在“ManyToOne”关系。所以一个食谱有一个类别,一个类别有几个食谱。
但厨师也想以这种方式对食材进行分类。在这里,我们将有一个“多对多”的关系,而我们可以在甜点食谱中使用一种成分,就像在晚餐或汤食谱中一样。
一种解决方案是为自己的食谱和配料创建一个 cat_food 表。但是如何创建 cat_food 表,它存储食谱或成分?(取决于给定的内容)
我的想法是使用中间模型并使用字段选项“blank=True”和“null=True”设置“foreignKeys”。但我对此并不满意。从长远来看,它是否可能会导致一些数据库问题?有没有更优雅的方法来处理这种情况?