当前位置:  开发笔记 > 后端 > 正文

在Django中使用Jinja2模板的任何缺点或陷阱?

如何解决《在Django中使用Jinja2模板的任何缺点或陷阱?》经验,为你挑选了3个好方法。

阅读Jinja2文档后,我有兴趣在将来的Django项目中使用它.但是,我想知道是否有人在使用Django的Jinja2模板时遇到任何缺点或陷阱?如果是这样,你是如何解决它们的?

我也不介意听到积极的经历,只是为了获得Jinja2最好和最差的好横截面.



1> Joe Holloway..:

我在一些项目中使用Jinja2,并且喜欢它给我的额外表现力.我可以将我的表示逻辑和应用程序逻辑分开,但我不必向后弯腰调用我专门为我的表示层设计的函数/方法.

除了已经被其他海报列出的内容之外,以下是我发现的一些内容:

Admin应用程序与Django模板紧密耦合

Auth应用程序(以及其他地方)附带的默认视图和装饰器与Django模板相关联,因此如果要使用Jinja2模板进行登录/注销/等,则可能需要重复工作.

行为上,Django模板默认会逃避输出,而Jinja2则不会.我认为任何一种方法都有其自身的优点,但如果你在两者之间切换,你必须牢记这一点.


但是,要明确的是,Jinja 2中默认的HTML转义只是一个配置选项.

2> Van Gale..:

我还没有将Jinja2与实际的Django网站一起使用,但我确实将使用Django模板的应用程序在独立模式下转换为Jinja2模板.我遇到的唯一(非常小的)问题是缺少{%spaceless%}模板标记.


万一你还没有看到Armin的文章http://lucumr.pocoo.org/2008/9/16/why-jinja-is-not-django-and-why-django-should-have-a-look- at-it你应该读它.在顶部,他有一个链接到一个项目转换django-> jinja2.它不能做自定义标签,所以我想它们都需要重写.
对于任何寻找的人来说,Jinja2实际上已将此功能作为其模板标记语法的一部分内置:http://jinja.pocoo.org/docs/templates/#whitespace-control

3> 小智..:

我在我的维基上记录了Django - > Jinja2的几个语法,配置,过滤器和互操作性注意事项

推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有