Django grappelli добавляет пользовательские js в change_form

Я пытаюсь добавить свой пользовательский JavaScript в некоторые шаблоны change_form. Прежде чем установить Grappelli, я мог бы сделать это, расширив файл change_form.html администратора и создав подпапки в шаблонах с именами моих модулей.

Например мое дерево наемное было похоже на:

+templates 
++admin_copies 
+++change_form.html (I have added extra js blocks) 
++admin 
+++employer 
++++employer 
+++++change_form.html 
++++employer_new 
+++++change_form.html

Как вы понимаете, у меня есть модель под названием "Работодатель". Я могу добавить свои собственные методы js в файлы change_form.html. Тем не менее, этот тип наследования вызывает проблемы с javascript/breadcrumbs с Grappelli. Как я могу просто добавить свои пользовательские функции JavaScript для каждой модели отдельно?

1 ответ

Решение

Создать подкласс ModelAdmin и определить пользовательский JS в его Media учебный класс.

admin.py в той же папке, что и models.py который имеет Employer :

from django.contrib import admin
from models import Employer

class EmployerAdmin(admin.ModelAdmin):
    class Media:
        js = ("js/custom.js",) # This paths are appended to your MEDIA_URL setting

admin.site.register(Employer, EmployerAdmin)

Узнайте больше здесь

Другие вопросы по тегам