我有一些带有空content
字段的平面页面及其模板内的内容(带有template_name
字段)。
为什么我使用django.contrib.flatpages
- 它允许我以最少的 URL 配置服务(大部分)静态页面。
- 我不必为每个人编写视图。
为什么我不需要模型FlatPage
- 我将内容留空,只提供一个模板路径。因此,我可以利用文件中的源代码;
- 我可以直接从文件系统编辑源代码,无需服务器(例如管理员)的帮助。
- 我可以利用语法高亮和其他编辑器功能。
- 使用该模型,我必须维护平面页面的固定装置。
- 因此,同一实体的数据位于两个不同的位置。
- 如果我将内容移动到夹具内,则编辑将更加困难。
- 即使夹具维护不是问题,我仍然需要在开发过程中一次又一次地转储和加载这些夹具。
我在找什么
基本上; FlatPage
在保持contrib.flatpages
功能的同时摆脱模型。我不清楚应该如何解决这个问题。如果有一种简洁的修改方式(如add_to_class
)FlatPages
以在数据库以外的地方获取信息,我更愿意这样做。也许可以将元数据插入到模板中,然后读取此数据的特殊管理器将替换FlatPages
.
如果我不喜欢手动编辑而不是平面页面的管理功能,那么如何将数据库排除在外?