Я постоянно учусь использовать Django и играю с моделями, чтобы понять, как манипулировать отношениями между ними.У меня есть четыре модели, и я хотел бы иметь возможность связать две из трех моделей с моей таблицей внешних ключей (Варианты) и изменить это отношение в любой момент.В процессе производства я представляю, что пользователь увидит завтрак, обед и ужин с флажками рядом с каждым, и он может выбрать только два из трех, которые будут определять, какие модели входят в таблицу внешнего ключа.Эти два варианта определяют, к каким блюдам они имеют доступ одновременно.
Я создал три класса и попытался использовать таблицу внешнего ключа, которая бы содержала все три и позволяла пользователю выбирать только два из трех, но я думаю, что это оставит много неиспользуемого пространствав моей базе данных.Я открыт для ответов и предложений.
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)