我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python中的Flask模板是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python中的Flask模板是什么

Python中的Flask模板是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

在一般的 Web 程序里,访问一个地址通常会返回一个包含各类信息的 HTML 页面。因为我们的程序是动态的,页面中的某些信息需要根据不同的情况来进行调整,比如对登录和未登录用户显示不同的信息,所以页面需要在用户访问时根据程序逻辑动态生成。

我们把包含变量和运算逻辑的 HTML 或其他格式的文本叫做模板,执行这些变量替换和逻辑计算工作的过程被称为渲染(模板渲染引擎——Jinja2)。

按照默认的设置,Flask 会从程序实例所在模块同级目录的 templates 文件夹中寻找模板。

Python中的Flask模板是什么

模板基本语法

在模板里,你需要添加特定的定界符将 Jinja2 语句和变量标记出来

下面是三种常用的定界符:

{{ … }} 用来标记变量。

{% … %} 用来标记语句,比如 if 语句,for 语句等。

{# … #} 用来写注释。

模板中使用的变量需要在渲染的时候传递进去。

编写主页模板

我们先在 templates 目录下创建一个 movie.html 文件,作为主页模板。主页需要显示电影条目列表和个人信息,代码如下所示:

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>movie list</title></head><body>    {# 使用 length 过滤器获取 movies 变量的长度 #}    <p>{{ movies|length }} Titles</p>    <ul>        {% for movie in movies %} {# 迭代 movies 变量 #}        <li>{{ movie.title }} - {{ movie.year }}</li> {# 等同于 movie['title'] #}        {% endfor %} {# 使用 endfor 标签结束 for 语句 #}    </ul></body></html>

为了方便对变量进行处理,Jinja2 提供了一些过滤器(和Vue.js框架中的过滤器有着异曲同工之妙),语法形式如下:
{{ 变量|过滤器 }}

左侧是变量,右侧是过滤器名。比如,上面的模板里使用 length 过滤器来获取movies 的长度,类似 Python 里的 len() 函数。

准备虚拟数据

为了模拟页面渲染,我们需要先创建一些虚拟数据,用来填充页面内容,其中template.py中定义虚拟数据。

movies = [{'title': '长津湖', 'year': '2021'},{'title': '送你一朵小红花', 'year': '2021'}]

渲染主页模板

使用 render_template() 函数可以把模板渲染出来,必须传入的参数为模板文件名(相对于 templates 根目录的文件路径),这里即 ‘movie.html' 。为了让模板正确渲染,我们还要把模板内部使用的变量通过关键字参数传入这个函数,如下所示:

from flask import Flask, render_template app = Flask(__name__) @app.route('/')def movie():    return render_template('movie.html', movies=movies) if __name__ == "__main__":    app.run()

在传入 render_template() 函数的关键字参数中,左边的 movies 是模板中使用的变量名称,右边的movies 则是该变量指向的实际对象。这里传入模板的movies 是列表,但能够在模板里使用的不只这一种 Python数据结构,你也可以传入字符串、元组、字典、函数等。

render_template() 函数在调用时会识别并执行 “movie.html” 里所有的 Jinja2 语句,返回渲染好的模板内容。在返回的页面中,变量会被替换为实际的值(包括定界符),语句(及定界符)则会在执行后被移除(注释也会一并移除)。

看完上述内容,你们掌握Python中的Flask模板是什么的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python中的Flask模板是什么

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python中的Flask模板是什么

Python中的Flask模板是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在一般的 Web 程序里,访问一个地址通常会返回一个包含各类信息的 HTML 页面。因为我们的
2023-06-25

python flask模板继承方式是什么

今天小编给大家分享一下python flask模板继承方式是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。首先、在sta
2023-07-05

怎么用Python Flask模板jin

问题:Python列表(或者字典等)数据本身是10进制,现在需要以16进制输出显示在网页上解决:Python Flask框架中 模板jinja2的If 表达式和过滤器假设我有一个字典index, index['addr']是我要打印在网页上
2023-01-30

C++中的模板是什么?

模板是一种 c++++ 特性,允许创建可重用代码,无需编写多个版本。使用泛型类型作为参数,可以在编译时创建定制的数据类型或算法。主要优势包括代码重用性、类型安全性、性能优化、可扩展性。需要注意的是,模板可能难以阅读和维护,编译时间可能较长,
C++中的模板是什么?
2024-05-08

python中 flask的作用是什么

python中 flask的作用是什么?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科
2023-06-14

flask中模板引擎的使用方法

小编给大家分享一下flask中模板引擎的使用方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在我们对flask的一些引擎使用时,就不得不提到其中的一个默认引擎了
2023-06-14

vue中的模板语法是什么

本文小编为大家详细介绍“vue中的模板语法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue中的模板语法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、模板语法模板语法分为插值语法和指令语法两种
2023-06-29

Python的Flask框架中的Jinja2模板引擎学习教程

Flask的模板功能是基于Jinja2模板引擎来实现的。模板文件存放在当前目前下的子目录templates(一定要使用这个名字)下。 main.py 代码如下:from flask import Flask, render_template
2022-06-04

flask中flask-restful的作用是什么

flask中flask-restful的作用是什么?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1、概念Flask-RESTful是用于快速构建REST API
2023-06-14

Python中Flask运行的原理是什么

这篇文章主要介绍“Python中Flask运行的原理是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python中Flask运行的原理是什么”文章能帮助大家解决问题。  所有的 Python W
2023-06-29

什么是dedecms模板

Dedecms模板是指用于定制Dedecms网站外观和布局的文件集合,模板定义了网站的整体结构、样式和表现方式,通常由以下几部分组成:1、模板文件,用于定义网站的页面内容和结构;2、样式表文件,用于定义网站的样式和外观效果;3、脚本文件,用
2023-08-03

flask中flask-script库的作用是什么

今天就跟大家聊聊有关flask中flask-script库的作用是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、说明简单来说,就是一个flask终端启动参数解析工具;这样我们
2023-06-14

Flask中Flask-WTF插件的作用是什么

Flask中Flask-WTF插件的作用是什么?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1、概念Flask-WTF是一个Flask扩展,它封装了WTForms。Flas
2023-06-14

C++STL中vector模板类是什么

小编给大家分享一下C++STL中vector模板类是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!vector模板类创建vector对象,遍历元素vector
2023-06-29

flask中jinja2的宏是什么

小编给大家分享一下flask中jinja2的宏是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!对于jinja2的模块,我们已经有了一些基本的了解。不过本篇要带
2023-06-14

Flask中Jinja2指的是什么

这篇文章主要介绍了Flask中Jinja2指的是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在Flask框架里,有一种模板大家看起来非常眼熟,那就是Jinja2。如果在
2023-06-14

python flask部署的方法是什么

Python Flask的部署方法有多种,以下是其中几种常用的方法:1. 使用WSGI服务器部署:Flask应用可以使用WSGI服务器进行部署。首先需要安装所选择的WSGI服务器,然后使用命令行启动Flask应用。例如,使用Gunicorn
2023-08-14

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录