多个 Django 模板加载器

Posted

技术标签:

【中文标题】多个 Django 模板加载器【英文标题】:Multiple Django template loaders 【发布时间】:2011-10-04 23:25:45 【问题描述】:

我想在 Django 项目中使用 Jinja2。我正在使用来自 Django Snippets 的 this 模板加载器,但我仍然需要能够使用 Django 为管理页面呈现模板。但是,每当我尝试使用管理页面时,都会因为未知标签“load”而收到 TemplateSyntaxError。有没有办法让 Jinja 模板加载器在无法处理模板时服从 Django 的内置系统?

【问题讨论】:

【参考方案1】:

我建议在同时使用 Jinja 和 Django 模板时使用 Coffin 的这个分支:https://github.com/GaretJax/coffin/blame/master/README.rst 我在 http://umbel.com/ 上实现了这个,它使用了 Django 和 Jinja 模板的组合。

它有一个设置,您可以使用它来为特定应用禁用 Jinja 的模板加载器:

JINJA2_DISABLED_APPS = (
    'admin',
    'auth',
)

希望对你有所帮助。

【讨论】:

不客气。很高兴我能帮助你。在我找到 Coffin 的叉子之前,Jinja2 被证明是 a$$ 的全部痛苦。 'a$$'.replace('$', 's')

以上是关于多个 Django 模板加载器的主要内容,如果未能解决你的问题,请参考以下文章

Django:“加载”做啥(在模板文件中)?

Django 自定义模板标签和模板加载器

自定义模板加载器 Django

Django 模板继承:如何阻止基础模板重新加载?

默认为所有视图加载一个 Django 模板标签库

如何将变量传递给自定义 Django 模板加载器?