我有几个小的(500 或 600 行模板代码)Django 站点,我想将它们迁移到使用 Jinja2……但我想知道它会做多少工作。那么,一般来说,将一个小型 Django 站点迁移到 Jinja2 需要多少工作量?它“值得”吗?
问问题
28129 次
4 回答
53
虽然这只是我自己的经验,但我发现从 Django 转换到 Jinja2 是值得的,原因如下:
- 作为软件开发人员和模板设计师,Jinja2 的设计和实现对我来说似乎更直观;
- Jinja2 更具可扩展性(至少在我试图扩展模板引擎的方式上);
- Jinja2 在允许运行逻辑代码方面更加灵活(但它给了你足够的绳索来吊死自己);
- Jinja2 被认为明显更快(虽然我没有做过任何基准测试,但这总是会根据所使用的测试进行辩论,并且无论如何与必须进行数据库查找的查询的总等待时间基本上无关);
Jinja2 提供了比 Django 更有用的错误输出(即跟踪模板中发生错误的行号)。编辑:根据 Dor 的评论,Django 提供了有用的错误消息,指向问题的行和上下文,就像 Jinja2。
如果您对 Django 的模板引擎没有任何问题,那么 Jinja2 应该会感觉相对直观,如果可能更精致一些(或者至少对我来说确实如此)。同样,我发现这个Coffin
项目写得很好,并且在从 Django 转换到 Jinja2 时很有帮助——既是为了它的使用,也是作为如何扩展 Jinja2 的示例。
话虽如此,Django 的模板引擎是可靠的,并且能够胜任大多数任务。我相信它会在 Django 的下一个版本中得到改进,并且有很多专门的开发人员付出了很多努力来增加它的功能。因此,无需担心它在近期到中期的未来会变得不受支持。
同样,这只是我的经验,因为它的价值——我希望这会有所帮助。
于 2010-12-04T05:04:40.413 回答
4
还有 django-jinja。https://github.com/niwibe/django-jinja
新的和不错的项目。http://niwinz.github.io/django-jinja/latest/
它声称是与 Django 的简单且无阻碍的 jinja2 集成。
于 2014-05-25T22:28:41.480 回答