Как переопределить и вызвать super для response_change или response_add в django admin - PullRequest
2 голосов
/ 13 октября 2009

Я хотел бы переопределить response_change в ModelAdmin для обновления поля в родительском окне. После обновления я бы хотел вернуть управление переопределенным response_change.

Упрощенная версия того, что я попробовал:

class MyModelAdmin(admin.ModelAdmin):
    def response_change(self, request, obj):
        // perfom my actions
        super(MyModelAdmin, self).response_change(request, obj)

Но я получаю AttributeError - у объекта 'NoneType' нет атрибута 'has_header'. Может быть, я не использую супер правильно ...?

Ответы [ 2 ]

12 голосов
/ 13 октября 2009

Вам нужно фактически вернуть результат вызова super ().

return super(MyModelAdmin, self).response_change(request, obj)
0 голосов
/ 13 октября 2009

Может быть, вы могли бы добавить более подробную трассировку стека?

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

...