Flask 模板(一)

使用模板有助于将业务逻辑与表现逻辑分开,更易于维护。模板是已经建立的网页代码,其中部分动态数据需要在请求的上下文中用具体值替换。

flask中使用了Jinja2模板引擎,储存在templates文件夹中。

templates/index.html<h1>Hello World!</h1>

使用 {{ name }} 占位

templates/user.html
<h1>Hello, {{ name }}!</h1>

模板的渲染

模板的渲染即用真实值取代模板中的占位变量的过程。

from flask import Flask,render_template
@app.route(‘/‘)
def index():
    return render_template(‘index.html‘,name=name)

变量可以从列表、字典和对象获取。

<p>A value from a dict:{{ mydict[‘key‘] }}</p>
<p>A value from a list:{{ mylist[3] }}</p>
<p>A value from a list with a variable index:{{ mylist[intvar] }}</p>
<p>A value from a object‘s method :{{ myobj.mymethod() }}</p>

使用过滤器修改变量:

{{ name|capitalize }}

常用过滤器:

过滤器名 说明
safe 渲染时不转义
capitalize 首字母大写,其他小写
lower 小写
upper 大写
title 每个单词首字母大写
trim 去掉首尾空格
striptags 把值中所有html标签删掉

控制结构

{% if user %}
    Hello,{{ user }}
{% else %}
    Hello,Stranger!
{% endif %}
<ul>
    {% for comment in comments %}
        <li>{{ comment }}</li>
    {% endfor %}
</ul>

原文地址:https://www.cnblogs.com/icetouch/p/8570806.html

时间: 2024-08-30 13:18:26

Flask 模板(一)的相关文章

Flask Web Development - Flask 模板1 - 模板机制&Jinja2引擎

节选自PartI Chapter3,这个chapter主要讲模板工作原理,这里讲的就是Jinja2这个模板,另外还提到了Flask-Bootstrap及Flask-Moment两个插件,前者对Flask使用Bootstrap做了些封装,后者对moment.js做了些封装.内容较多,估计分开搞. 模板存在的意义 可维护性高的代码是结构良好且整洁的. 当用户在网站注册一个账户时,他在表单里填入邮箱跟密码,并点击提交按钮.在server端就收到一个包含这些数据的request,再由Flask分发到相应

总结django flask模板不同的地方

一.应用AngularJS , 对{{}}的处理不同 1.django模板使用AngularJS:{ % verbatim % }姓名: {{ firstName + " " + lastName }}{ % endverbatim % } 2.flask模板使用AngularJS:解决flask jinja2和angularJS变量冲突的方法{ % raw % } 姓名: {{ firstName + " " + lastName }} { % endraw %

flask模板语句

flask模板语句1.模板中控制语句    *Jinja2 模板同样支持控制语句,像在 {%-%} 块中,代码: 1 <html> 2 <head> 3 {% if title %} 4 <title>{{title}} - microblog</title> 5 {% else %} 6 <title>Welcome to microblog</title> 7 {% endif %} 8 </head> 9 <b

flask模板的基本用法、模板语法、渲染模板、模板辅助工具

flask模板 在动态web程序中,视图函数返回的HTML数据往往需要根据相应的变量(比如查询参数)动态生成. 当HTML代码保存到单独的文件中时,我们没法再使用字符串格式化或拼接字符串的当时在HTML代码中插入变量,这时我们需要使用模板引擎(template engine).借助模板引擎,我们可以再HTML文件中使用特殊的语法来标记变量,这类包含固定内容和动态部分的可重用文件称为模板(template). 模板引擎的作用就是读取并执行模板中的特殊语法标记,并根据传入的数据将变量替换为实际值,输

四 .Flask 模板 中间件 特殊装饰器 基础知识(使用)

一 Flask 模板 中间件 特殊装饰器 1 .Flask 模板语法直接看面效果 https://www.cnblogs.com/lovershowtime/p/11349576.html    模板  和Django模板类似 edit.html<form> asdfasdf asdfasdf asdf asdf 哈啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊 </form> login.html <!DOCTYPE html> <html lang="zh-C

5. Flask模板

一.Jinja2模板引擎 1. 定义 ? 视图函数的主要作用是生成请求的响应,这是最简单的请求.实际上,视图函数有两个作用:处理业务逻辑和返回响应内容.在大型应用中,把业务逻辑和表现内容放在一起,会增加代码的复杂度和维护成本.本节学到的模板,它的作用即是承担视图函数的另一个作用,即返回响应内容. ? 模板其实是一个包含响应文本的文件,其中用占位符(变量)表示动态部分,告诉模板引擎其具体的值需要从使用的数据中获取.使用真实值替换变量,再返回最终得到的字符串,这个过程称为"渲染".Flas

FlaskWebDevelopment - Flask模板4 - url_for()在模板中生成链接

这里讲用url_for()来简化在模板中生成链接的操作.以产生静态文件链接为例. url_for() 直接在模板里写URL,当页面复杂了之后很麻烦,而且可能对代码产生依赖,代码改动后链接就失效了. URL可以通过Flask提供的url_for()来动态产生.这个函数以视图函数名或者注册视图函数时的端点名作为参数,返回相应的URL. 比如在目前的代码中: url_for('index')返回\, url_for('index', _external=True)返回http://localhost:

FlaskWebDevelopment - Flask模板2 - Flask-Bootstrap插件

这部分还是属于模板,讲Flask里嵌入Bootstrap,利用Flask-Bootstrap插件.这个插件存在的意义就是简化这个嵌入的操作过程,当然不用也可以. 通过Flask-Bootstrap集成Bootstrap Bootstrap的介绍就不翻了. Bootstrap作为一个client端的框架,他最终存在于HTML文件中,做Flask应用开发的话,应该把它放入模板中. Flask-Bootstrap插件可以简化这个集成操作,用pip安装: $ pip install flask-boot

Flask模板学习笔记

概述:    在Flask中,Jinja2默认配置如下:        A.扩展名为.html,.htm,.xml和.xhtml的模板中开启自动转义.        B.在模板中可以使用{% autoescape %}来手动设置是否转义.        C.Flask在Jinja2环境中加入一些全局函数和辅助对象(下面写的方法) 1.|safe的作用是关闭转义字符    转义就是对特殊字符进行转义.特殊字符指的是HTML.    三种方法关闭转义:        a.用Markup对象封装.