Фронтальная интеграция¶
Вообще говоря, django CMS полностью независима от фронтенда. Ей все равно, на чем построен или используется фронтенд вашего сайта.
Исключением является редактирование вашего сайта, поскольку панель инструментов django CMS и элементы управления редактированием используют свой собственный код фронтенда, который иногда может влиять на код вашего сайта.
Перезагрузка содержимого, введенная в django CMS 3.5 для операций с плагинами (при перемещении/добавлении/удалении и т.д.), извлекает изменения разметки с сервера. Это может потребовать повторной инициализации JS-виджета или загрузки дополнительного CSS, в зависимости от ваших собственных настроек фронтенда.
Например, при использовании Less.js вы можете заметить, что после сохранения плагина контент загружается без ожидаемого CSS.
В этом случае вы можете использовать событие cms-content-refresh
, чтобы позаботиться об этом, добавив что-то вроде:
{% if request.toolbar and request.toolbar.edit_mode_active %}
<script>
CMS.$(window).on('cms-content-refresh', function () {
less.refresh();
});
</script>
{% endif %}
после панели инструментов JavaScript.