У меня есть несколько плоских страниц с пустым полем content и их содержимым внутри шаблона (с полем template_name).
django.contrib.flatpagesFlatPageПо сути; избавление от модели FlatPage при сохранении функциональности contrib.flatpages. У меня нет четкого представления, как это решить. Если есть чистый способ модификации (например, add_to_class) FlatPages, чтобы получить информацию где-то еще, а не в базе данных, я бы предпочел это. Возможно, метаданные можно будет вставить в шаблоны, и тогда специальный менеджер, который читает эти данные, заменит менеджер по умолчанию FlatPages.
Если я не предпочитаю ручное редактирование функциональным возможностям администратора для плоских страниц, как можно исключить базу данных из уравнения?






Использование общего представления direct_to_template было бы намного проще. Вы можете использовать переданные параметры в одном представлении, чтобы указать фактический шаблон в urls.py, если вы не хотите добавлять запись для каждой страницы:
r'^foo/(?P<template_name>.+)/$','direct_to_template', {'template': 'foo_index.html'}),
Затем импортируйте шаблон в свой foo_index.html:
{% include template_name %}
direct_to_template - это мой путь. Думаю, я слишком многого ожидал от плоских страниц. В моих шаблонах есть несколько тегов и более одного блока. Спасибо.
Вы неверно представляете себе, для чего нужна плоская страница. Он предназначен для «редко редактируемого» контента, который должен быть доступен через администратора или формы, чтобы администратор или поставщик контента мог их изменить, например, при изменении контактной информации для сайта.