Flask模板

什么是模板?

  首先,要明白什么是表面逻辑和业务逻辑。表面逻辑可以理解为你的功能如何展现在用户面前。业务逻辑可以理解为你如何实现前端展现的功能。

如果把两种逻辑的实现混在一份代码里,显得杂乱,不易读,不容易理解。所以表面逻辑的实现要放在模板里,提升代码的可维护性。

 

模板

  模板是一个包含响应文本的文件,其中包含占位变量表示动态部分,其具体值只能请求上下文中才能知道。使用真实值替换动态变量,再返回得到响应字符串,这一过程称为渲染。为了渲染模板,flask使用了Jinja2引擎。

 

Jinja2

  介绍及用法:https://www.cnblogs.com/weigaojie/p/10522772.html

 

渲染模板

  

from flask import Flask, render_temple


@app.route('/'):
 def index():
    return render_temple('index.html')


@app.route('/user/<name>'):
def user(name):
    return render_temple('user.html',name=name)  #(模板名,传递变量:传入的形参)

 

变量

  {{name}}在jinjia中表示一个变量,它是一种特殊的占位符,告诉模板引擎这个位置的值从渲染模板时使用的数据中获取。

  你可以使用过滤器修改变量,过滤器的名称添加在变量之后,中间用竖线隔开。{{name|capitalize}}

 

 

   控制结构

    {%if  user  %}

      hello {{user}}

    {%esle%}

      hello  visitor

    {%end if%}

 

 

 

 宏相当于一个搭建好的页面一部分,可以被引入,可以往宏传递参数。可以将一些经常用到的代码片段放到宏中,然后把一些不固定的值抽取出来当成一个变量,在使用宏时传递参数,从而将宏渲染成为页面的一部分。

{%maroc render_ commen(comment)%}

  <li>comment<li>

{%end maroc}

模板继承

定义一个base.html的基础模板。

 

posted @ 2020-04-13 23:27  L1m1t  阅读(144)  评论(0编辑  收藏  举报