Добавление метода перезаписи для связанных полей ManyToMany - PullRequest
0 голосов
/ 12 августа 2010

Где я должен перезаписать метод add () для полей, связанных с ManyToMany.

Похоже, это не 'объекты' менеджера моей модели.Потому что, когда мы добавляем новое отношение для полей ManyToMany, мы не пишем Model.objects.add ().

Итак, что мне нужно, это перезаписать метод add () экземпляра.Как я могу это сделать?

Редактировать:

Так что я знаю, что есть ManyRelatedManager.Осталось одно, как я могу перезаписать это?

Извините ... не перезаписать, но назначить его в моей модели по умолчанию.

1 Ответ

0 голосов
/ 12 августа 2010

http://docs.djangoproject.com/en/1.2/topics/db/managers/#custom-managers

Вы можете создать любое количество менеджеров для Модели.

Вы можете создать подкласс ManyRelatedManager и назначить его для Модели.

Этот пример можетбыть тем, что вы ищете

# Then hook it into the Book model explicitly.
class Book(models.Model):
    title = models.CharField(max_length=100)
    author = models.CharField(max_length=50)

    objects = models.Manager() # The default manager.
    dahl_objects = DahlBookManager() # The Dahl-specific manager.

Управление objects используется по умолчанию.Не изменяйте это.

dahl_objects - настроенный менеджер.Вы можете иметь любое их количество.

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