美文网首页
flask框架的学习之模板

flask框架的学习之模板

作者: 山野过客 | 来源:发表于2019-04-23 10:17 被阅读0次

    模板可以将已经写好的html、css、js展示在页面,你只需要往里面填充要展示的内容即可

    导入:from flask import render_template

    def index(): # 视图函数 return render_template('index.html') # 加载并渲染模板

    现在模板的内容是写死的,这肯定满足不了咱们,我们希望把后台返回的内容渲染在到模板上。Flass使用 Jinja2这个模板引擎来渲染模板。

    我们先把pycharm里的模板语言改成Jinja2

    我们在后台模拟一些数据,返回给模板渲染,render_template函数第二个参数就是我们要返回的内容

    def index():  # 视图函数

        ctx = {

            "name": '老王',

            "age": 12,

            "hobby": ["下棋", '电影'],

            "test": {"a": 1, "b": 2}

        }

        return render_template('index.html', **ctx)  # 加载并渲染模板

        # 下面这种也可以

        # return render_template('index.html', name='laowang', age=12, hobby=["下棋", '电影'], test={"a": 1, "b": 2})  # 加载并渲染模板

    常用过滤器

    过滤器支撑链式调用:

    {{"hello world"|reverse|upper}}

    语句块操作:

    {%filterupper%}'abc'{%endfilter%}

    禁用转义:{{ '<em>hello</em>' | safe }}

    删除标签:{{ '<em>hello</em>' | striptags }}

    首字母大写:{{ 'hello' | capitalize }}

    所有值小写:{{ 'HELLO' | lower }}

    首字母大写:{{ 'hello world' | title }}

    字符串反转:{{ 'hello' | reverse }}

    字符串截断:{{ 'hello world' | truncate(5) }}

    获取列表长度:{{ [1,2,3,4,5,6] | length }}

    列表求和:{{ [1,2,3,4,5,6] | sum }}

    列表排序:{{ [6,2,3,1,5,4] | sort }}

    自定义过滤器

    # 自定义过滤器def handletime(time): return time.strftime('%Y-%m-%d %H:%M')app.jinja_env.filters['handletime'] = handletime # 注册过滤器

    自定义过滤器

    {{ time|handletime }}

    相关文章

      网友评论

          本文标题:flask框架的学习之模板

          本文链接:https://www.haomeiwen.com/subject/wemmgqtx.html