Структура наследования Джанго сводит меня с ума.
Я создаю несколько скинов, каждый с двумя и тремя столбцами:
site1
- two_cols.html
- three_cols.html
site2
- two_cols.html
- three_cols.html
Макет three_cols.html расширяет файл two_cols.html и просто добавляет в макет дополнительный столбец с дополнительным заполнителем django-cms для содержимого.
Как для site1, так и для site2 почти единственное изменение на этом этапе - это другое имя таблицы стилей, поэтому я хочу переместить two_cols.html и three_cols.html в «общий» каталог, и иметь только те, которые находятся под site1 и site2 extension их.
Итак:
- two_cols.html устанавливает имя блока для пути CSS
- three_cols.html расширяет two_cols.html и предоставляет дополнительный столбец
Я сделал это для двухцветного макета, и он отлично работает. Однако для макета three_col в site1, например, я хочу расширить site1 / two_cols.html (который задает путь CSS), а затем просто включить содержимое 'common / three_cols.html' (который определяет дополнительный столбец).
Это не работает для меня, потому что three_cols.html содержит теги-заполнители django-cms, которые, поскольку я только «включаю» шаблон, по-видимому, не анализируются, а просто оцениваются.
Иными словами, я хочу, чтобы некоторые настройки в site1 / two_cols.html можно было использовать из site1 / three_cols.html, где они оба расширяют различные шаблоны.
Резюме
Моя проблема в том, как я могу включить что-то, как если бы оно было в родительском шаблоне (что, по словам документации django, включить не может: https://docs.djangoproject.com/en/1.3/ref/templates/builtins/#include)?