Этот вопрос, вероятно, можно решить с помощью более широкого вопроса: «Как заменить атрибут python 2.7 на свойство извне», но, возможно, есть способ выполнить это с помощью Django-CMS, поэтому я спрашиваю:
Я пытаюсь ограничить выбор шаблонов страниц Django-CMS (v3.4.x) на основе их родителей, поэтому для этого я подумал о том, чтобы переопределить его template_choices
с помощью функции, но я вижу, что в Модель Django-CMS Page
загружается при создании, например:
@python_2_unicode_compatible
class Page(...):
...
TEMPLATE_DEFAULT = get_cms_setting('TEMPLATES')[0][0]
template_choices = [(x, _(y)) for x, y in get_cms_setting('TEMPLATES')]
...
Изменение get_cms_settins
не может быть и речи, но мне нужно изменить TEMPLATE_DEFAULT
и template_choices
, чтобы они имели правильные значения, которые я желаю. Поскольку я все еще плохо знаком с Django и Python, у меня вопрос , где и как как мне это сделать?