Почему я не могу использовать другие объекты модели в моем собственном менеджере? - PullRequest
1 голос
/ 06 июля 2011

Я хочу реализовать пользовательский django.db.models.manager.Manager (назовем его MyManager) для MyModel.

Методы в MyManager должны вызывать методы фильтра для AnotherModel.

Возможно ли это?Я получаю ImportError из-за этого.

1 Ответ

1 голос
/ 06 июля 2011

В вашем MyModel вам нужно добавить свой MyManager в качестве явного менеджера.

class MyModel(models.Model):
    objects = MyManager()

Вы можете сохранить стандартного менеджера и иметь своего менеджера обоих, включив этого менеджера под другим именем.

class MyModel(models.Model):
    myobjects = MyManager()

Если вы используете django-admin, есть нюансы, связанные с выбором объектов менеджера. Вы можете найти эти и многие другие детали в потрясающей документации django .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...