Скажем, у меня есть следующие модели:Как использовать ModelManager в поле Django ManyToMany?
class Poll(model):
title = models.CharField()
class Option(model):
title = models.CharField()
polls = models.ManyToManyField(
Poll,
through='PollOption',
null=True,
blank=True,
related_name='options'
)
class PollOptionManager(models.Manager):
use_for_related_fields = True
def get_queryset(self):
return super(PollOptionManager, self).get_queryset().filter(
is_active=True
)
class PollOption(model):
poll = ForeignKey(Poll)
option = ForeignKey(Option)
is_active = BooleanField(default=True)
objects = PollOptionManager()
При попытке запроса Poll.options.all()
я все еще получаю Option
случаи, для которых PollOption.is_active
является False
. Как я могу заставить диспетчера модели соответствующим образом фильтровать мои отношения ManyToMany
на основе флага на поле through
?