关于jinja2的应用场景

关于jinja2的应用场景

问题描述:

一点小的疑惑。

我能不能把jinja2,看作类似JSP的一种技术。我没学过JAVA,但这个模板引擎,有种JAVA去写前端页面的感觉。而页面交由服务端渲染。

假设我是一个python web的后端开发,那我在发送邮件时,可以使用到jinja2的模板引擎,除此之外,应该不会大范围去使用这个东西。毕竟前后端分离。

假设我是一个全栈开发,那前端的页面,我会考虑使用vue或者react,页面相关的东西,后端我只提供数据,不做样式渲染。

所以在这种情况下,我对这个技术的应用场景,有些模糊。


当然技术没有高低贵贱……只是觉得,技术的流行是为了解决某些问题产生的。而产生jinja2这门技术的原因,是想要依靠python,去完整构建前端页面么(也就是前后端不分离)

还是说,它有什么独特的应用场景。(还是只能想到邮件)

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
夜魇丶 提问者 2024-01-12 23:21:29

尴尬。问题找不到删除的位置。

我想明白了。jinja2不过是多提供了一种实现方式而已。

JS可以写前端,python也可以写。不能因为JS更好写,就让python完全放弃前端。

就像有了高铁,并不能说绿皮车就不让跑了。这种想法太傲慢了。


  • 同学,你好!同学后面的想法是正确的,FLASK支持多个模板引擎。但是每个模板都有利弊,根据需求来选择就好。常用的模板引擎有以下几种,同学可了解下他们的优缺点和使用场景。

    1、Jinja2:Jinja2是Flask默认的模板引擎,也是最常用的选择。它具有类似于Django模板语法的结构,并提供了丰富的功能,如条件、循环、变量替换等。

    2、Mako:Mako是一个高性能的模板引擎,它具有简单易用的语法和灵活的扩展性。相比于Jinja2,Mako更加灵活,但在性能上略有下降。

    3、Tempita:Tempita是一个小巧而简单的模板引擎,它的设计目标是保持简单和明确。Tempita的语法类似于Jinja2,但功能较少。

    4、Werkzeug's template module:Werkzeug是Flask的核心库之一,该模块提供了一个基本的模板引擎,但功能相对较少,适用于简单的模板需求。

    祝学习愉快~

    2024-01-14 18:39:22
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师