逻辑Flask——Flask模板

2023-10-27

前言:
学习模板的目的:用于前台展示 使用 vue
页面跳转由后台控制
前后端分离 前端 template 需要导入render_template

一、简单模板

from flask import Flask,render_template
app = Flask(__name__)
@app.route('/')
def login():
	# 注意模板的路径,如果是在templates的demo文件夹下,这需要写成demo/index.html
    return render_template('index.html')

if __name__ == '__main__':
    app.run(debug=True)
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <input id="kw" name="wd" class="s_ipt" value maxlength="255" autocomplete="off">
</body>
</html>

在这里插入图片描述
注意:一定要将存放模板的文件夹设置为templates(默认原生的文件名)在这里插入图片描述

如果要更改默认的文件夹名templates,需要在此处指定,且性创建的文件名要和这的一致

app = Flask(__name__,template_folder='template')

二、模板传参

可以传指定的参数,交由前端页面进行展示

在这里插入图片描述

若传多个参数,可以将多个参数写成字典格式进行传递

return render_template('index.html',context=context)

在这里插入图片描述

使用**context 可以做到拆包的功能(见下)

三、jinja2内置过滤器

Jinja2模板过滤器 相当于一个函数,将变量传入到过滤器中,然后过滤器根据自己的功能,再返回到响应的值,之后再讲结果渲染到页面中。

# 绑定路由
@app.route('/')
def index():
    context = {
   
        'username':'xiaohuahua',
        'age':-18,
        'city':'hebei',
        'es':"<script>alert('hello')</script>",
        "books":['java','python','html'],
        'book':{
   'java':4},
        'shuzhi':89.0,
        'kong':' ioi ',
        'chang':'中国 河北省 廊坊市'
    }
    return render_template('jinjia_demo.html',**context)

    <p>首页</p>
    <h1>{
  { username }}</h1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

逻辑Flask——Flask模板 的相关文章

随机推荐

  • idea java 插件开发_Intellij IDEA插件开发入门详解

    现今的IDE尽管有如 洪水猛兽 般强大 但要知道再强大的IDE也没法提供给使用者想要的一切功能 所以IDE一般都提供有API接口供开发者自行扩展 下面以Intellij IDEA 12下的插件开发为例 来看一下如何进一步增强IDE以适应开发
  • ROS自学实践(6):ROS进行激光SLAM建图——gmapping

    本节主要记录运行ROS自带的SLAM建模包gmapping方法 为后续理解这些代码 建立自己的SLAM算法打下基础 基于粒子滤波算法 二维栅格地图 需要里程计信息 1 通过命令行安装gmapping包 sudo apt get instal
  • win10下qt 中没有代码提示框了怎么办?

    在这里我也找了好久 发现是跟你装的输入法有冲突了 所以代码提示没有了 请你切换到英文的输入下 把你的输入法换成标准的英文输入输入状态 图片如下 换成这样就可以提示了 如图所示完美解决不能提示的问题 好了完美解决问题 在这里我放上我讲的几个课
  • Elasticsearch搜索详解(六):文本检索

    文本检索是关系型数据库 如 MySQL 的弱项 而恰恰是 ES 的强项 前一篇文章已经提到了 match term 除此之外还有multi match match phrace 等 分别的含义是 match 从一个字段中检索关键字 包括模糊
  • react中setState即时更新解决方案

    博主在做一个前端项目时 需要根据props中的状态来修改state中的状态 由于react中setState更新状态不能及时显示到页面 博主总结如下可及时更新state中的方法 1 componentWillReceiveProps 2 g
  • Mybatis:xml配置和基本增删改查

    目录 一 环境配置 environments 1 事务管理器 transactionManager 2 数据源 dataSource 3 属性 property 4 设置 settings 5 类型别名 typeAliases 二 安装My
  • net.ipv4.tcp_tw_reuse是干嘛的?

    文章目录 前言 准备工作 sd01的配置 sd02的配置 开始测试 关闭net ipv4 tcp tw reuse 打开net ipv4 tcp tw reuse 关闭客户端的net ipv4 tcp timestamps 关闭服务器端的n
  • Nacos+Node基础教程

    简介 Nacos是一个更易于构建云原生应用的动态服务发现 配置管理和服务管理平台 功能 动态配置服务 动态配置服务让您能够以中心化 外部化和动态化的方式挂历所有环境的配置 动态配置消除了配置变更时 重新部署应用和服务的需要 配置中心化管理让
  • 如何将子窗口的值传到父窗口去调用

    这是我当初的问题 现在我想实现这样一个功能 现在父窗口有一个select控件 同时有一个 增加 按钮 点击按钮 弹出一个窗口 这时弹出窗口也有一个table 同时有一个 确认 按钮 table中有若干项 每一行对应一条记录 并有一个chec
  • 前端VUE项目部署到远程服务器

    文章目录 1 基础介绍 2 准备VUE项目 3 服务器安装 nginx服务器 4 启动nginx 5 修改nginx 配置 6 打包部署VUE项目 1 基础介绍 VUE项目 前后端分离 前后端部署到同一个服务器上 服务器 腾讯云轻量应用服务
  • 关于order by后面接条件查询

    适用场景 如表tab a 有三个字段 如果field1非空则按升序排列 如果field1是空再排field2 如果 field2非空升序排列 如果field2是空再排field3 如果field3非空则升序排列 如果field3是空 例子1
  • linux+应用程序运行日志,Linux 系统运行着许多子系统和应用程序。您可以使用系统日志记录从启动时就收集有关运行中系统的数据。有时...

    概述 在本教程中 您将学习以下内容 配置 syslog 守护程序 了解标准设施 优先级和操作 配置日志轮换 了解 rsyslog 和 syslog ng 系统内部发生了什么 Linux 系统运行着许多子系统和应用程序 您可以使用系统日志记录
  • c++ 双端队列 deque用法解析

    1 deque的作用 deque即双端队列 它的用法非常强大 可以代替栈stack 队列queue 向量容器vector等等 因为它能像栈一样后进先出 也能像queue一样先进先出 还能像vector一样随机访问 同时支持sort lowe
  • java模糊查询代码_Java模糊查询方法详解

    这篇文章主要为大家详细介绍了Java模糊查询方法的实现 实例教你如何用Java做模糊查询结果 感兴趣的小伙伴们可以参考一下 当我们需要开发一个方法用来查询数据库的时候 往往会遇到这样一个问题 就是不知道用户到底会输入什么条件 那么怎么样处理
  • 【机器学习】太香啦!只需一行Python代码就可以自动完成模型训练!

    自动化机器学习 Auto ML 是指数据科学模型开发的管道组件自动化 AutoML 减少了数据科学家的工作量并加快了工作流程 AutoML 可用于自动化各种管道组件 包括数据理解 EDA 数据处理 模型训练 超参数调整等 对于端到端机器学习
  • 小米 adb 驱动_ADB禁用系统应用

    第一步 下载ADB压缩包 并解压到根目录下 自己百度找ADB包 第二步 在ADB目录下 shift 鼠标右键 打开powershell 并输入cmd 第三步 手机进入开发者模式 百度 并打开USB调试 数据线连接电脑和手机 要安装好驱动 在
  • 解决idea项目没有蓝色小方块

    导入项目后 把项目中的几个子moudle复制了一份 作为一个新模块 结果发现 项目右下角没有 蓝色小方块 因此造成maven不能识别 如下图 解决方式 在右边侧栏 maven 面板 点击 选择该项目中的pom xml文件即可
  • linux安装时 dev sda4,VMvare在CentOS7.4安装iscsi共享盘

    VMvare 在 CentOS7 4 安装 iscsi 共享盘 1 在节点 1 上添加一个 20g 的存储并 reboot 1 1 查看新添加的磁盘 root xmc1 fdisk l Disk dev sda 32 2 GB 322122
  • python多进程和多线程看这一篇就够了

    脑海中关于进程和线程的概念一直很模糊 什么时候该用多进程 什么时候该用多线程总是搞不清楚 同时python因为历史遗留问题存在GIL全局锁 就让人更加困惑 这一篇就完整整理一下python中进程和线程的概念和实现 文章目录 进程和线程 GI
  • 逻辑Flask——Flask模板

    文章目录 一 简单模板 二 模板传参 三 jinja2内置过滤器 四 Jinja2自定义过滤器 通用过滤器 自定义时间过滤器 五 控制语句 1 if 语句 2 for in语句 列表 遍历字典 获取当前遍历状态 六 宏 6 0 宏的基本模板