Как добавить кнопку для взаимодействия в админпанель Django
Я хочу создать кнопку на странице тестовой модели в панели администратора, которая при нажатии будет автоматически добавлять новый вопрос, основанный на тесте, который выбрал пользователь. Возможно ли это?
Есть ли способ реализовать эту функциональность, используя существующие инструменты и технологии в панели администратора? Если нет, то какие шаги или модификации потребуются для реализации этой функции?
Лучший способ - переопределить тег шаблона админки submit_row
:
from django.contrib.admin.templatetags.admin_modify import submit_row, register as admin_modify
from django.contrib.admin.templatetags.base import InclusionAdminNode
def custom_submit_row(context):
"""
Display the row of buttons for delete and save.
"""
ctx = submit_row(context)
ctx.update({'show_close': True})
return ctx
@admin_modify.tag(name='submit_row')
def submit_row_tag(parser, token):
return InclusionAdminNode(parser, token, func=custom_submit_row, template_name='submit_line.html')
Не забудьте импортировать его куда-нибудь, после импорта он будет зарегистрирован автоматически и вам не нужно будет загружать его в какой-либо шаблон.
Если вам не нужно делать что-то сложное в контексте шаблона, вы можете просто переопределить шаблон submit_line.html