Flask自身使用了jinja2模板,可以使用render_template()方法来渲染模板,只需要将模板名和关键字的参数传入。

该渲染模板的模块(views.py)会在 templates 文件夹里寻找模板,模块和该文件夹同级。

如下实例:

from flask import render_template
from app import app

@app.route('/hello/')
@app.route('/hello/<name>')
def hello(name=None):
    return render_template('hello.html', name=name)

导入app包中的Flask对象,渲染hello.html模板。hello.html如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>首页</title>
    {% if name %}
    <h1> 你好,{{name}}!</h1>
    {%else%}
    <h1>你好!</h1>
    {% endif %}
</head>
<body>
    <h1>测试Flask渲染</h1>
</body>
</html>

ps:项目中可以把特定元素 (比如页眉、导航栏和页脚)写到一个模板,其他模板继承该模板减少冗余代码。

最新文章

  1. NodeJs+Request+Cheerio 采集数据
  2. 浏览器主页被hao123贱贱的篡改的一种方式
  3. Windows Live Writer技巧
  4. golang 自定义封包协议(转的)
  5. SQL Server 2008 R2 开启数据库远程连接
  6. Longest Consecutive Sequence [LeetCode]
  7. .net IL 指令速查
  8. 6.1 CUDA: pinned memory固定存储
  9. flash Timer类使用
  10. linux基于file的logger
  11. Java实战之02Hibernate-08二级缓存
  12. 用delphi的THTTPRIO控件调用了c#写的webservice。
  13. eclipse如何快速抽取样式(style)或者include
  14. mssql sqlserver xml数据类型专题
  15. jQuery:实现图片按需加载的方法,当要显示内容的高度超过了页面的高度,按需加载,根据滚动条的位置来判断页面显示的内容
  16. vue store存储commit和dispatch
  17. java中的字符、字符串及数字之间的转换(转)
  18. Python 安装 lxml 插件
  19. PAT 1019 General Palindromic Number
  20. 几种常见的开源软件许可协议(GPL, LGPL, Apache License, BSD)

热门文章

  1. error: could not install *smartsocket* listener: cannot bind to 127.0.0.1:5037
  2. [Java - 调用WebService]{http://schemas.microsoft.com/ws/2005/05/addressing/none}ActionNotSupported
  3. Spring2.5学习4.2_Proxy实现动态代理(目标类实现随意接口)
  4. CXF 调用方式——动态创建客户端(调用稳定版本号为2.7.18)
  5. Grunt快速使用笔记
  6. CodeIgniter 无法上传 CSV 文件
  7. PHPExcel_Reader_Exception: is not recognised as an OLE file in Classes问题解决方法
  8. 各种MQTT server功能比較
  9. C# Interview Questions:C#-English Questions
  10. jquery ajax、get、post实例