Где страница подтверждения сохранения может быть подключена к администратору Django? (аналогично удалению подтверждения) - PullRequest
7 голосов
/ 22 сентября 2008

Я хочу эмулировать поведение страницы подтверждения удаления перед сохранением определенные модели в админке. В моем случае, если я изменю один объект, некоторые другие должны быть удалены, поскольку они зависят от объекта сейчас устаревшее состояние.

Я понимаю, где реализовать реальные каскадные обновления (внутри метод сохранения родительской модели), но я не вижу быстрого способа спросить пользователь для подтверждения (а затем отката, если они решат не спасти). Я полагаю, я мог бы реализовать некоторую странную логику подтверждения непосредственно внутри метода сохранения (вроде двухфазного сохранения), но это кажется ... некрасиво.

Есть какие-нибудь мысли, даже общие указания на кодовую базу django?

Спасибо!

Ответы [ 3 ]

2 голосов
/ 22 сентября 2008

Вы можете перегрузить метод get_form администратора вашей модели и добавить дополнительный флажок в сгенерированную форму, которая должна быть тикетом. В качестве альтернативы вы можете переопределить change_view и перехватить запрос.

1 голос
/ 22 сентября 2008

Я ни в коем случае не эксперт по Django, поэтому этот ответ может ввести вас в заблуждение.

Начните искать где-то около django.contrib.admin.options.ModelAdmin, особенно render_change_form и response_change. Я полагаю, вам нужно было бы создать подкласс ModelAdmin для вашей модели и обеспечить требуемое поведение этих методов.

0 голосов
/ 23 сентября 2008

Рассматривали ли вы переопределение административных шаблонов для рассматриваемых моделей? Эта ссылка предоставляет отличный обзор процесса. В этой конкретной ситуации более тонкий уровень контроля может быть лучшим способом достижения желаемого результата.

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