Джанго Админ - PullRequest
       4

Джанго Админ

0 голосов
/ 11 марта 2009

Я использую администратора Django для управления моими данными. У меня есть таблицы пользователей, групп и доменов Таблица пользователей имеет много-много связей с таблицами групп и доменов. Таблица доменов имеет отношение один ко многим с таблицей групп. и когда я сохраняю данные пользователя через admin, мне также нужны некоторые дополнительные обновления базы данных в users_group и таблице users_domains Как мне это сделать? Где я могу поставить код. Благодарю.

Ответы [ 2 ]

2 голосов
/ 11 марта 2009

Я думаю, что вы ищете InlineModels . Они позволяют редактировать связанные модели на той же странице, что и родительская модель. Если вы ищете больший контроль, чем этот, вы можете переопределить ModelAdmin методы сохранения .

Кроме того, всегда проверяйте Руководство , когда вам что-то нужно. Это действительно неплохо.

0 голосов
/ 12 марта 2009

Лучший способ обновить другие таблицы базы данных - выполнить необходимые операции получения и сохранения. Однако, если у вас есть отношение «многие ко многим», по умолчанию обе стороны отношения доступны из параметра _set. То есть user.group_set.all () выдаст вам все объекты группы, связанные с пользователем, а group.user_set.all () выдаст вам все объекты пользователя, связанные с группой. Поэтому, если вы переопределите метод сохранения (или зарегистрируете прослушиватель сигнала - какой бы вариант не звучал стилистически более приятным), попробуйте:

for group in user.group_set.all():
    #play with group object
    ....
    group.save()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...