Flask框架二 Jinja2

1.简介:

 

什么是Jinja2,Jinja2起什么作用

Jinja2是Python下一个被广泛应用的模版引擎,且它自带一个感觉挺nb的转义功能

作用1.它起了让前端和后端分离的作用

2.减少了Flask项目代码的耦合性,页面逻辑放在模板中,业务逻辑放在视图函数中,

3.提供控制语句/继承等高级功能

//Jijon的默认渲染路径是从template中找如果要改变,可以在Flask初始化的时候指定template_folder进行指定模板的路径

2.模板的渲染、传参

要渲染一个模板,可以通过render_template方法

render_template('xxx.html')

传参:

render_template('index.html',uanme(key)='momo')

页面取参

{ {key}}

当传递多个参数的时候可以将其以字典的形式封装,

count={

'name':'xxx',

'passwrod':'ppp',

'age':'18',

'shen':{

        'xxx':'ttt'         //总有闲人喜欢在搞点特殊调用的时候通过shen.xxx

}

}

 render_template('xxx.htm',**count)          //**可以将字典打散,然后直接掉key值就行,不用再加字典名称

3.模版中使用url_for

      模版中的`url_for`跟我们后台视图函数中的`url_for`使用起来基本是一模一样的。也是传递视图函数的名字,也可以传递参数。使用的时候,需要在`url_for`左右两边加上一个`{ { url_for('func') }}`

通常在a标签中使用<a hef=`{ { url_for('func') }}'>

url_for后面跟着的两种参数传值

1.路径传值:   {# /account/login/tantan/   其中tantan为路径参数 #}
   <a href="{ { url_for('login',name='tantan') }}">登录4</a>

2.查询字串传值: 

  {# /account/login/tantan/?p1=lol&amp;p2=daota #}<a href="{ { url_for('login',p1='lol',p2='daota',name='tantan') }}">登录5</a>

只用name的值作作为key键值名转换为变量,其余的都是直接默认加在后面的参数

4.过滤器:简单对参数进行一些处理然后在返回出去

使用方法:在调用的后面加‘|’字符

基本语法:`{ { variable|过滤器名字 }}`。使用管道符号`|`进行组合。

{ { postion|abs}}</p>

//常用发过滤器的种类及作用:

default(value,default_value,boolean=false):如果当前变量没有值,则会使用参数中的值来代替。name

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值