Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 1, 2010 10:00:08

tier
От:
Зарегистрирован: 2007-11-25
Сообщения: 30
Репутация: +  0  -
Профиль   Отправить e-mail  

вызов метода модели из админки

Приветствую.

Такая проблема.
В модели одно из полей числовое. Надо менять это число (типа, внесли денег) в админке. НО, не банально изменять число, а вызывать один из методов модели (add_money(summa), del_money(summa), ). Нужно это затем, что в методах еще дополнительные действия выполняются (логгирование и т.д.).
Как это можно сделать? Документация по админке не помогла…
Спасибо



Офлайн

#2 Сен. 1, 2010 12:17:04

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

вызов метода модели из админки

На каком этапе этот метод надо вызывать?
Например, если это надо делать при сохранении модели - переопределить метод save_model:

...
def save_model(self, request, obj, form, change)
...
В этом методе параметр obj и есть модель, с которой можно делать все, что угодно.



Офлайн

#3 Сен. 1, 2010 12:34:55

tier
От:
Зарегистрирован: 2007-11-25
Сообщения: 30
Репутация: +  0  -
Профиль   Отправить e-mail  

вызов метода модели из админки

Нет, не то. Про этот вариант я знаю.
Надо чтобы на странице объекта модели была кнопочка или ссылка “Внести деньги”, которая ведет на форму, где вводится число, которое уже прибавляется к значению поля. Выглядеть это должно примерно, как кнопка “Сменить пароль” на странице пользователя в админке. Т.е. необходимо иметь возможность изменять значение поля через метод, указав сумму, которую надо прибавить, но не имея возможности непосредственно редактировать его значение (как не показывать поле - рассказывать не надо).
Наверное, я слишком много от админки хочу…



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version