Flask中的Templates

1.什么是模板
  模板 , 在Flask 中就是允许响应给用户看的网页
  在模板中,允许包含"占位变量"来表示动态的内容
  模板最终也会被解析成字符串再响应给客户端,这一过程通常称为"渲染"

  Flask中的模板是依赖于 Jinja2 的模板系统
2.模板的设置
  默认情况下,Flask会在程序文件夹中的 templates 的子文件夹中搜索模板

  默认情况下,需要手动创建 templates 文件夹
3.模板的渲染
  作用:在视图中,将模板文件(xx.html)渲染成字符串之后,再响应给客户端浏览器
  使用与函数返回时:return render_template(‘xxx.html‘)

4.模板中的语法
  1.变量:变量是一种特殊的占位符,告诉模板引擎该位置的值是从渲染模板时的数据中获取出来的。

   在视图中 :
   @app.route(‘/‘)
   def index():
     return render_template(‘xxx.html‘,变量1=值1,变量2=值2,..)

     return render_template(‘xxx.html‘,name=‘laowang‘,age=35)
   在模板中 :
     {{变量名}}
     例如:<h1>{{name}}</h1>

  2.过滤器
   1.什么是过滤器:过滤器是允许在变量输出前改变变量的值
   2.语法
    {{变量|过滤器}}
    Jinja2 模板中常见过滤器:
      过滤器名              说明
      capitalize    首字符变大写,其他变小写
      lower          将值转换为小写
      upper         将值转换为大写
      title             将值中的每个单词首字符变大写
      trim       去掉值两边的空格

@app.route(‘/02-var‘)
def var():
    uname = "my name is zengsf"
    # 这里的locals()会把你所有的变量都封装成一个对象
    print(locals())
    return render_template(‘02-var.html‘,params = locals())

然后只需要去02-var.html文本中进行调用就可以了

<h1>capitalize:{{params.uname|capitalize}}</h1>

原文地址:https://www.cnblogs.com/zengsf/p/9932803.html

时间: 2024-11-15 01:27:25

Flask中的Templates的相关文章

WTForms In Flask(WTForms在Flask中的应用)

WTForms WTForms是一个支持多个web框架的form组件,主要用于对用户请求数据进行验证. 安装wtforms : pip3/pip install wtforms 用户登录/注册示例 项目目录结构 flask-wtforms-example │ app.py │ └─templates add_user.html index.html login.html register.html users.html 用户登录 当用户登录时候,需要对用户提交的用户名和密码进行多种格式校验. 如

flask中的wtforms使用

一.简单介绍flask中的wtforms WTForms是一个支持多个web框架的form组件,主要用于对用户请求数据进行验证. 安装: pip3 install wtforms 二.简单使用wtforms组件 1.用户登录 具体代码: from flask import Flask,render_template,request,redirect from wtforms.fields import core from wtforms.fields import html5 from wtfo

整合Flask中的目录结构

一.SQLAlchemy-Utils 由于sqlalchemy中没有提供choice方法,所以借助SQLAlchemy-Utils组件提供的choice方法 import datetime from sqlalchemy import create_engine from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import Column, Integer, String, Text, ForeignK

Flask最强攻略 - 跟DragonFire学Flask - 第二篇 Flask 中的 Render Redirect HttpResponse

1.Flask中的HTTPResponse 在Flask 中的HttpResponse 在我们看来其实就是直接返回字符串 2.Flask中的Redirect 每当访问"/redi"这个地址的时候,视图函数redi会触发redirect("/") 跳转到url地址:  "/" 并会触发"/"对应的视图函数index() 3.Flask 中的 render (render_template) HTML模板渲染是每个Web框架中都必

Flask最强攻略 - 跟DragonFire学Flask - 第九篇 Flask 中的蓝图(BluePrint)

蓝图,听起来就是一个很宏伟的东西 在Flask中的蓝图 blueprint 也是非常宏伟的 它的作用就是将 功能 与 主服务 分开怎么理解呢? 比如说,你有一个客户管理系统,最开始的时候,只有一个查看客户列表的功能,后来你又加入了一个添加客户的功能(add_user)模块, 然后又加入了一个删除客户的功能(del_user)模块,然后又加入了一个修改客户的功能(up_user)模块,在这个系统中,就可以将 查看客户,修改客户,添加客户,删除客户的四个功能做成蓝图加入到客户管理系统中,本篇最后会做

flask框架----整合Flask中的目录结构

一.SQLAlchemy-Utils 由于sqlalchemy中没有提供choice方法,所以借助SQLAlchemy-Utils组件提供的choice方法 import datetime from sqlalchemy import create_engine from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import Column, Integer, String, Text, ForeignK

Flask初识,第九篇,Flask中的蓝图

蓝图,听起来就是一个很宏伟的东西 在Flask中的蓝图 blueprint 也是非常宏伟的 它的作用就是将 功能 与 主服务 分开怎么理解呢? 比如说,你有一个客户管理系统,最开始的时候,只有一个查看客户列表的功能,后来你又加入了一个添加客户的功能(add_user)模块, 然后又加入了一个删除客户的功能(del_user)模块,然后又加入了一个修改客户的功能(up_user)模块,在这个系统中,就可以将 查看客户,修改客户,添加客户,删除客户的四个功能做成蓝图加入到客户管理系统中,本篇最后会做

Flask中&#39;endpoint&#39;(端点)的理解

Flask路由是如何工作的 整个flask框架(及以Werkzeug类库为基础构建的应用)的程序理念是把URL地址映射到你想要运行的业务逻辑上(最典型的就是视图函数),例如: @app.route('/greeting/<name>') def give_greeting(name): return 'Hello, {0}!'.format(name) 1 2 3 注意,add_url_rule函数实现了同样的目的,只不过没有使用装饰器,因此,下面的程序是等价的: # 抬头没有使用路由装饰器,

Flask中的 Render Redirect HttpResponse

1.Flask中的HTTPResponse from flask import Flask app = Flask(__name__) @app.route("/") # app中的route装饰器 def index(): # 视图函数 return "Hello DSB" # HTTPResponse app.run(debug=True) 在Flask中的HttpResponse在我们看来其实就是直接返回字符串 2.Flask中的Redirect from f