Я думаю, у вас есть класс Media
в вашем ModelAdmin с дополнительными JavaScript и CSS для администратора (, как здесь ). Ваш JavaScript не знает слаг текущего объекта, давайте изменим это.
Сначала создайте одну из следующих структур каталогов в каталоге шаблонов: «admin / your-app
» для приложения или «admin / your-app
/ your-model
» только для конкретной модели ( см. Django документация ).
Затем создайте файл "change_form.html" в этом каталоге и поместите в него что-то похожее на это:
{% extends "admin/change_form.html" %}
{% block extrahead %}
<script type="text/javascript" charset="utf-8">
var MYAPP_objectSlug = "{{ original.slug|escapejs }}";
</script>
{{ block.super }}
{% endblock %}
Это расширит обычный "change_form.html" администратора и расширит блок extrahead
, чтобы установить переменную JavaScript для вашего объекта slug (original
- ваш объект).
Теперь адаптируйте файл JavaScript, который делает tinyMCE.init
, для использования другого файла на основе CSS.
в переменной JavaScript MYAPP_objectSlug
.
if (MYAPP_objectSlug == "ticker"){
var MYAPP_cssFile = "../css/special.css"; // change to your path
} else {
var MYAPP_cssFile = "../css/default.css"; // change to your path
}
tinyMCE.init({
...
content_css : MYAPP_cssFile,
...
});