Я использую Python + Django и есть это в моей модели прямо сейчас:Как ограничить выбор отношения между многими?
class Team(models.Model):
player = models.ManyToManyField(Player, related_name="player", through="Team_Player")
squad = models.ManyToManyField(Player, related_name="squad", blank=True)
class Player(Person):
name = models.CharField(max_length=100)
class Team_Player(models.Model):
team = models.ForeignKey(Team)
player = models.ForeignKey(Player)
Есть ли способ ограничить Team.squad только у игроков внутри Team.player отношений? До сих пор я пытался использовать limit_choices_to. Любые подсказки?
Я думаю, что у вас может быть избыточность с вашей моделью Team_Player. не могли бы вы описать, что вы пытаетесь выполнить? – dm03514
Структура модели кажется довольно грязной. Кроме того, вы можете переопределить метод save() или использовать https://docs.djangoproject.com/en/dev/ref/signals/#django.db.models.signals.pre_save сигнал PRE-SAVE, чтобы проверить, команда имеет только игроков из команды, и для повышения значения ValueError, если это не соответствует. – Tisho
Я считаю, что ваш ищет это: http://stackoverflow.com/questions/4621494/django-limiting-the-number-of-relationships-in-a-onetomany-relationship – Medeiros