Поэтому мне интересно использовать приведенный ниже пример кода в проекте Django, но я озадачен, пытаясь понять, как я мог бы явно вызвать один менеджер моделей.
class AuthorManager(models.Manager):
def get_queryset(self):
return super(AuthorManager, self).get_queryset().filter(role='A')
class EditorManager(models.Manager):
def get_queryset(self):
return super(EditorManager, self).get_queryset().filter(role='E')
class Person(models.Model):
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
role = models.CharField(max_length=1, choices=(('A', _('Author')), ('E', _('Editor'))))
people = models.Manager()
authors = AuthorManager()
editors = EditorManager()
Я знаю, что представление вызывает модели, а модели вызывают менеджер моделей, но меня это немного сбивает с толку. Могу ли я указать, какое представление вызывает какой менеджер, или модель позаботится об этом неявно каким-то другим способом?