Ограничить выбор ForeignKey на основе другого поля ForeginKey
Допустим, у меня есть структура приложения, которая выглядит следующим образом:
** models.py **
Class School(models.Model):
name = models.CharField(max_length=500)
Class Manager(models.Model)
name = models.Charfield(max_length=500)
school = models.ForignKey(School)
Class Group(models.Model)
name = models.Charfield(max_length=500)
school = models.ForeignKey(School)
manager = models.ForeignKey(Manager, related_name="group_manager")
В этом шаблоне я хочу, чтобы пользователи могли создавать группы (на странице школы) и выбирать среди менеджеров, принадлежащих только к одной школе!
Любая идея?
1 ответ
Если у вас есть таблица с двумя внешними ключами и одним именем, вероятно, это должна быть сквозная таблица для отношений ManyToMany между Shool и Manager.
Class School(models.Model):
name = models.CharField(max_length=500)
managers = models.ManyToMany(Manager, through='Group')