iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python Flask入门之模板
  • 749
分享到

Python Flask入门之模板

2024-04-02 19:04:59 749人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录模板基本语法 编写主页模板 准备虚拟数据 渲染主页模板 总结在一般的 WEB 程序里,访问一个地址通常会返回一个包含各类信息的 html 页面。因为我们的程序是动态的,页面中的某

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

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

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

在这里插入图片描述

模板基本语法

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

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

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

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

3、{# … #} 用来写注释。

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

编写主页模板

我们先在 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 语句,返回渲染好的模板内容。在返回的页面中,变量会被替换为实际的值(包括定界符),语句(及定界符)则会在执行后被移除(注释也会一并移除)。

在这里插入图片描述

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!

--结束END--

本文标题: Python Flask入门之模板

本文链接: https://www.lsjlt.com/news/157102.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • Python Flask入门之模板
    目录模板基本语法 编写主页模板 准备虚拟数据 渲染主页模板 总结在一般的 Web 程序里,访问一个地址通常会返回一个包含各类信息的 HTML 页面。因为我们的程序是动态的,页面中的某...
    99+
    2024-04-02
  • Flask入门很轻松(三)—— 模板
    转载请在文章开头附上原文链接地址:https://www.cnblogs.com/Sunzz/p/10959471.html Flask内置的模板语言,它的设计思想来源于 Django 的模板引擎,并扩展了其语法和一系列强大的功能。 渲...
    99+
    2023-01-31
    入门 模板 轻松
  • python中的flask框架Jinja 模板入门教程
    目录1、快速体验2、Flask 最小 DEMO3、模板继承4、Super Blocks5、Macros6、自定义过滤器7、结论Flask 和 Django 附带了强大的 Jinja ...
    99+
    2024-04-02
  • Python Flask入门
    目录主页分析代码:修改视图函数返回值修改URL规则修改视图函数名总结追溯到最初,Flask 诞生于 Armin Ronacher 在 2010 年愚人节开的一个玩笑。后来,它逐渐发展...
    99+
    2024-04-02
  • C++入门之模板基础讲解
    目录前言引入模板函数模板模板的匹配原则模板的显示调用类模板注意1注意2总结 前言 今天博主将要介绍的内容是–模板,他在C++中具有非常重要的位置.至于什么是模板呢?我们请看...
    99+
    2024-04-02
  • Flask模板
    模板基本语法 {% if user %} {{ user }} {% else %} hello! <ul> {% for index in indexs %} <li> {{ i...
    99+
    2023-01-31
    模板 Flask
  • 怎么用Python Flask模板jin
    问题:Python列表(或者字典等)数据本身是10进制,现在需要以16进制输出显示在网页上 解决: Python Flask框架中 模板jinja2的If 表达式和过滤器 假设我有一个字典index, index['addr']是我要打印...
    99+
    2023-01-30
    模板 Python Flask
  • Flask入门
    本文参考博客:https://blog.csdn.net/xiaoyuan511t=1 Flask是轻量级的Web开发框架,只具备基本的核心内容-->视图和路由,其他的功能都需要第三方或者自己手写 建立第一个Flask程序 pip...
    99+
    2023-01-31
    入门 Flask
  • Java SpringBoot模板引擎之 Thymeleaf入门详解
    目录模板引擎简介引入Thymeleaf模板引擎分析Thymeleaf模板引擎测试Thymeleaf模板引擎1、编写一个TestController2、编写一个测试页面 test.ht...
    99+
    2024-04-02
  • Python入门之模块与包
    模块指的是Python的程序文件(源文件),模块的文件名就是模块名加上.py,里面包含了Python对象定义和Python语句,模块包含了定义函数、类和执行代码等等。模块提高了代码的...
    99+
    2024-04-02
  • Python中的Flask模板是什么
    Python中的Flask模板是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在一般的 Web 程序里,访问一个地址通常会返回一个包含各类信息的 HTML 页面。因为我们的...
    99+
    2023-06-25
  • Django零基础入门之模板变量详解
    引言: 我们在页面上会看到,谁登录的就会显示谁的信息,那么这个页面上的变量信息是怎样实现的呢? 这就是本文要讲述的内容——Django中的模板变量! 1.模板变量! 可以在前...
    99+
    2024-04-02
  • 怎么进行Python Flask入门
    这篇文章将为大家详细讲解有关怎么进行Python Flask入门,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。追溯到最初,Flask 诞生于 Armin Ronacher 在 2010 年愚...
    99+
    2023-06-25
  • Flask入门之完整项目搭建
      一、创建虚拟环境   1,新建虚拟环境   cmd中输入:mkvirtualenv 环境名   2,在虚拟环境安装项目运行所需要的基本模块 pip install flask==0.12.4 pip install redis pi...
    99+
    2023-01-31
    入门 完整 项目
  • Flask简介&入门
    1 了解框架 Flask作为Web框架,它的作用主要是为了开发Web应用程序。那么我们首先来了解下Web应用程序。Web应用程序 (World Wide Web)诞生最初的目的,是为了利用互联网交流工作文档。   1.1 一切从客户端发起...
    99+
    2023-01-31
    入门 简介 Flask
  • Goweb入门Gopongo2模板引擎
    目录下载 pongo2 函数库从字符串中读取模板从文件中读取文本Go pongo2 迭代Go pongo2 过滤Go pongo2 条件总结Go pongo2 教程展示了如何使用 p...
    99+
    2024-04-02
  • flask入门补充
      在上篇文章提到了json的编码问题。那么Flask是国外开发的框架,没有考虑到中文编码,那么我们就需要自己配置   那么在访问页面的时候会有 get 请求和post  请求。在下边我也会提到。以及没有接触过编程的,我会推荐一个软件, ...
    99+
    2023-01-30
    入门 flask
  • Flask模板继承深入理解与应用
    目录什么叫模板继承呢模板页完整代码什么叫模板继承呢 在我的理解就是:在前端页面中肯定有很多页面中有很多相同的地方,比如页面顶部的导航栏,底部的页脚等部分,这时候如果每一个页面都重写一...
    99+
    2024-04-02
  • Flask 入门教程
    Flask 入门教程 一、Flask简单使用 1、准备环境 硬件:Windows 7+python 3.6+安装软件:pycharm安装(社区版)、python环境安装 2、简单的Flask应用 本地...
    99+
    2023-10-07
    flask python 后端
  • PHP入门指南:模板方法模式
    PHP是一种流行的Web开发语言,被广泛应用于构建动态网页和Web应用程序。PHP支持许多不同的编程模式,包括面向对象编程、函数式编程和设计模式。其中,模板方法模式是一种常见的设计模式,它可以帮助开发人员构建可维护、可扩展的代码。什么是模板...
    99+
    2023-05-22
    PHP 模板方法 入门
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作