Перепишите шаблон Django Material Admin и сохраните его в папке проекта

Я работаю с фреймворком Django Material Admin. Я хочу перезаписать шаблон (пример: clearable_file_input.html) и поместить перезаписанный шаблон в папку проекта, чтобы получить обновленную функциональность шаблона при запуске проекта. Куда мне нужно поместить обновленный шаблон внутри проекта? Какие все изменения (если они есть, например, обновление файла settings.py) нужно сделать, чтобы автоматически получать обновленный шаблон, а не оригинальный шаблон?

Пример сценария: Я хочу обновить функциональность открытия ссылки (TabularInline Model) при нажатии на нее. Я хочу, чтобы при нажатии на ссылку она открывалась в другой вкладке. Итак, я понял, что мне нужно обновить файл clearable_file_input.html, и я успешно обновил его. Теперь мне нужно понять, где мне нужно разместить этот файл в моем проекте, чтобы получить обновленную функциональность. Я не хочу обновлять оригинальный шаблон, находящийся по пути: "./local/lib/python3.7/site-packages/material/admin/templates/admin/widgets/clearable_file_input.html". Я хочу поместить обновленный шаблон в проект так, чтобы при запуске проекта был взят обновленный шаблон, а не оригинальный шаблон, находящийся в ранее указанном пути.

Что мне нужно сделать, чтобы эта функциональность работала?

Вам нужно переопределить шаблон, как было сказано здесь, но в моем случае, мне пришлось сделать еще три дополнительных шага, а именно использовать TemplateSettings renderer вместо стандартного.

Шаг 1: Вам необходимо добавить следующую строку в файл settings.py вашего django

FORM_RENDERER = 'django.forms.renderers.TemplatesSetting'

Шаг 2: добавьте следующее в список DIRS в конфигурации TEMPLATES

django.__path__[0] + '/forms/templates'

Шаг 3: добавьте 'django.forms' в ваши установленные приложения.

Это поможет!

Вернуться на верх