Django Admin changeform_view methodsdont 'разрешить открытое редактирование данных - PullRequest
0 голосов
/ 10 октября 2018

В моем проекте django я хочу добавить таблицу с последней вставкой данных над любой формой добавления / редактирования, поэтому в моем admin.py я пишу:

class t_proj_routeAdmin(admin.ModelAdmin):        
    def changeform_view(self, request, obj_id=None, form_url='', extra_context=None):
        l_mod = t_proj_route.objects.latest('id')

        extra_context = {
            'lmod': l_mod,
        }
        return super(t_proj_routeAdmin, self).changeform_view(request, extra_context=extra_context)

, затем в моем шаблоне используйте данные для добавлениястол.Все сделано, если я открываю страницу ДОБАВИТЬ, но когда я пытаюсь изменить уже существующую запись, django перенаправляет меня когда-либо на новый ДОБАВИТЬ, и я не могу открыть страницу редактирования с выбранными данными.

Как я могуиспользовать эту технику для управления ADD и EDIT записи?

Заранее спасибо

1 Ответ

0 голосов
/ 11 октября 2018

Прежде всего, я предлагаю определить методы, подобные этому:

def changeform_view(self, request, obj_id, form_url, extra_context=None):

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

В выражении return используйте полную вставку переменных метода:

return super(t_proj_routeAdmin, self).changeform_view(request, obj_id, form_url, extra_context=extra_context)

Это должно работать

BYE

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