【Head First Python】jinja模板

学习《Head First Python》这本书的时候,里面提到了使用 jinja 模板批量生产网页的方法,这里补充一下具体实现细节。

首先,HTML 网页是需要自己准备的。也就是说,jinja 并不提供网页模板,网页想要呈现哪些内容,是由使用者自行创建 HTML 来决定的。

其次,自行创建的 HTML 中可以嵌入一些模板字符串,符合 jinja 语法的,比如 {{data}} 这种形式,jinja 是可以识别出来,然后提供 API 进行操作的。

也就是说,Python 打开了 HTML,将其作为字符串读取,然后 jinja 库提供了若干 API,来操作字符串,将字符串中约定的格式的内容进行替换。

结论,HTML 是表现形式,jinja 库不提供标准的 HTML 模板,需要自行准备。所以要自行搭建 HTML 的框架,然后在预备自定义的地方添加上 jinja 字符串,然后就可以通过 Python 的 jinja 库来将字符串替换成指定内容啦。

原文地址:https://www.cnblogs.com/bladeofstalin/p/11296770.html

时间: 2024-08-30 06:27:56

【Head First Python】jinja模板的相关文章

自动化运维Saltstack系列(四)之States配置管理和jinja模板的使用

States配置管理 States是Saltstack中的配置语言,在日常进行配置管理时需要编写大量的States SLS文件,而编写这些SLS文件的一般步骤也就是我们平时手动配置一台服务器的步骤:首先安装源码包,然后管理一个配置文件,最后再保证这个服务的开机启动及正常运行.其中使用到的states模块功能需要我们一边学习一边实践加强理解. 接下来,我们通过一个简单的例子来理解Saltstack配置管理的基本原理--安装keepalived 1)修改master配置文件的file_roots根目

salt jinja模板中变量使用pillar的几种方法

先转载下jinja模板中使用变量的方法,后文主要讲解pillar的变量使用方法 一.jinja模版的使用方法: 1.file状态使用template参数 - template:jinja 2.模版文件里面变量使用{{名称}},例如{{PORT}} 变量使用Grains:{{ grains['fqdn_ip4'] }} 变量使用执行模块:{{ salt['network.hw_addr']('eth0') }} 变量使用Pillar:{{ pillar['apache']['PORT'] }} 3

理解 JINJA 模板

UNDERSTANDING JINJA jinja是sls文件是默认的模板语言 JINJA IN STATES 在state文件被运行之前需要将文件中jinja模板语言部分处理掉,处理完之后再转化成YAML格式,最后变成python数据结构.jinja模板语法通常被用于在state文件中使用控制结构,如if条件,for循环等,可以达到消除冗余数据的效果. 在sls文件中使用jinja模板示例: 1 {% if grains['os'] != 'FreeBSD' %} 2 tcsh: 3 pkg:

三、Python Django模板

Python Django模板 衔接上一篇 一.创建一个模板文件 # cat blog/template/index.html <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0.5 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dt

四、Python Django模板变量

Python Django模板变量 一.传递字符串变量 # cat blog/template/index.html <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UT

五、Python Django模板标签

Python Django模板标签 一.if.for标签 # cat blog/views.py from django.shortcuts import render_to_response def index(req): user = {'name':'loyu','age':23,'sex':'male'} book_list = ['python','java','php','web'] return render_to_response('index.html',{'title':'L

六、Python Django模板使用流程

Python Django模板使用流程 一.创建工程项目 # django-admin.py startproject csvt02 # cd csvt02 二.创建应用 # django-admin.py startapp blog 三.添加访问url # egrep -v "#|^$" urls.py from django.conf.urls.defaults import patterns, include, url urlpatterns = patterns('', url

Python使用模板自动生成代码

整体思想: 完全按照自己的想法来写的,首先写模板文件,然后打开模板文件,对模板进行字符串格式化处理,最后再将格式化后的字符串保存到新的文件里面.如有更好的想法,欢迎交流. 将相似度很高的代码写模板文件(widget_template.txt): # -*- coding: UTF-8 -*- #!/usr/bin/env python #-------------------------------------------------------------------------------

[笔记]python template 模板

1.什么是template template是python中的string库的一部分 使用template可以不编辑应用就可以改变其中的数据 模板还可以被他的子类修改 2. template如何工作的 template是含有占位符的字符串 用字典将值映射到模板中 占位符后面跟着的变量名要符合python语法中的变量名规则 Template("$name is friends with $friend") 3.举例 from string import Template def main