如何在Python中像ERB一样进行模板化? [关闭]

2024-04-26

ERB http://ruby-doc.org/stdlib-2.3.0/libdoc/erb/rdoc/ERB.html如果您不熟悉的话,它是 Ruby On Rails 和许多其他 Ruby 项目使用的模板语言。简而言之,它允许您评估 HTML 模板内的原始 ruby​​ 代码并呈现结果。

考虑以下:

#hello.erb
<html>
<body>
  <p>Hello, <%= @name %></p>
</body>
<html>

Ruby 实例变量 @name 将被替换并呈现到用户看到的页面上。

现在,Python 有一种通用的模板语言,称为Jinja2 http://jinja.pocoo.org/其工作方式几乎相同(主要使用{{ }}s 而不是<% %>s),但两者之间有一个巨大的区别:

ERB 允许您使用any有效的 Ruby 代码,而 Jinja2 只有非常有限的 Python 式语言子集,而不是原始 Python。

问题:

如何使用 Python 模板化 HTML,使用整个语言,而不是有限的子集?


Mako http://www.makotemplates.org/允许编写常规的 Python 代码块,如下所示

this is a template
<%
    x = db.get_resource('foo')
    y = [z.element for z in x if x.frobnizzle==5]
%>
% for elem in y:
    element: ${elem}
% endfor

http://docs.makotemplates.org/en/latest/syntax.html#python-blocks http://docs.makotemplates.org/en/latest/syntax.html#python-blocks

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

如何在Python中像ERB一样进行模板化? [关闭] 的相关文章

  • 具有多个输入的kerasvalidation_data

    我尝试使用validation data方法 但是有问题 model fit X macd train X rsi train X ema train Y train sample weight sample weight validati
  • 如何读取通过追加行不断更新的文件?

    在我的终端中我正在运行 curl user dhelm 12345 https stream twitter com 1 1 statuses sample json gt raw data txt curl 的输出是实时流式 Twitte
  • 管理 Tweepy API 搜索

    如果这是对之前在其他地方回答过的问题的粗略重复 请原谅我 但我不知道如何使用 tweepy API 搜索功能 是否有任何有关如何使用搜索推文的文档api search 功能 有什么方法可以控制返回的推文数量 结果类型等功能 由于某种原因 结
  • 使用 Pillow 和 Numpy 进行图像推导

    I have two images and 我想导出一个只有红色 Hello 的图像 例如 所以我正在运行一个简单的推导python脚本 from PIL import Image import numpy as np root root
  • 顶级棉花糖模式验证

    From 棉花糖 validation http marshmallow readthedocs org en latest quickstart html validation 我知道我可以在架构中的特定字段上注册验证器 如果验证器失败
  • 合并数据框中的值以写入 Excel

    我有一个看起来像的数据框 column1 column2 column3 colum4 column5 1 r n 1 r s 1 r n 2 r s 3 r n 3 2 r n 1 r s 1 r n 4 r s 4 r n 5 3 r
  • Python Pandas 从宽到长的格式更改以及列标题拆分

    我有一个包含以下列标题和行示例的表 Subject Test1 Result1 Test1 Result2 Test2 Result1 Test2 Result2 0 John 10 0 5 20 0 3 我想将其改造成 Subject l
  • 为什么我不能“string”.print()?

    我的理解print 在 Python 和 Ruby 以及其他语言 中 它是字符串 或其他类型 上的方法 因为它的语法非常常用 打印 嗨 works 那么为什么不呢 hi print 在 Python 中或 hi print在红宝石工作 当你
  • 来自数据框 groupby 的条形图

    import pandas as pd import numpy as np import matplotlib pyplot as plt df pd read csv arrests csv df df replace np nan 0
  • 什么时候用==,什么时候用is?

    奇怪的是 gt gt gt a 123 gt gt gt b 123 gt gt gt a is b True gt gt gt a 123 gt gt gt b 123 gt gt gt a is b False Seems a is b
  • Microsoft Azure 数据仓库和 SqlAlchemy

    我正在尝试使用 python 的 sqlalchemy 库连接到 microsoft azure 数据仓库 并收到以下错误 pyodbc Error HY000 HY000 Microsoft ODBC SQL Server Driver
  • Python `concurrent.futures`:根据完成顺序迭代 future

    我想要类似的东西executor map 除了当我迭代结果时 我想根据完成的顺序迭代它们 例如首先完成的工作项应该首先出现在迭代中 等等 这样 当且仅当序列中的每个工作项尚未完成时 迭代就会阻塞 我知道如何使用队列自己实现这一点 但我想知道
  • django 中的“管理器”是什么?

    我已经阅读了Django官方中的定义文档 https docs djangoproject com en dev topics db managers 我仍然对什么感到困惑Manager does 文档说它们允许您操作数据库表 模型 但我仍
  • 在Python中打开网站框架或图像

    所以我对 python 相当熟练 并且经常使用 urllib2 和 Cookies 来实现网站自动化 我刚刚偶然发现了 webbrowser 模块 它可以在默认浏览器中打开一个网址 我想知道是否可以从该 url 中仅选择一个对象并打开它 具
  • Python 可以替代 Java 小程序吗?

    除了制作用于物理模拟 如抛射运动 重力等 的教育性 Java 小程序之外 还有其他选择吗 如果你想让它在浏览器中运行 你可以使用PyJamas http pyjs org 这是一个 Python 到 Javascript 的编译器和工具集
  • 在哪里可以找到Python内置序列类型的时间和空间复杂度

    我一直无法找到此信息的来源 无法亲自查看 Python 源代码来确定这些对象是如何工作的 有谁知道我可以在网上找到这个吗 结帐时间复杂度 http wiki python org moin TimeComplexitypy dot org
  • Python模糊字符串匹配作为相关样式表/矩阵

    我有一个文件 其中包含 x 个字符串名称及其关联的 ID 本质上是两列数据 我想要的是一个格式为 x by x 的相关样式表 将相关数据作为 x 轴和 y 轴 但我想要 fuzzywuzzy 库的函数 fuzz ratio x y 作为输出
  • 使用 Python 进行 Google 搜索网页抓取 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 最近为了工作中的一些项目 学习了很多python 目前我需要使用谷歌搜索结果进行一些网络抓取 我发现几
  • 使用Python的线程模块调用ctypes函数比使用多处理更快?

    我一生都无法找出这个问题的答案 我编写了一个可以执行数百次繁重计算的脚本 我有一个绝妙的主意 将这些计算任务编写为 C 然后使用 Python 的 ctypes 与它们交互 我心想 我什至可以使用并行性进一步优化它 我最初的方法是使用线程
  • 将自定义属性添加到 Tk 小部件

    我的主要目标是向小部件添加隐藏标签或字符串之类的内容 以在其上保存简短信息 我想到创建一个新的自定义 Button 类 在本例中我需要按钮 它继承所有旧选项 这是代码 form tkinter import class NButton Bu

随机推荐

  • 如何在pyplot中自动标注最大值

    我试图弄清楚如何自动注释图形窗口中的最大值 我知道您可以通过手动输入 x y 坐标来注释您想要使用的任何点来完成此操作 annotate 方法 但我希望注释是自动的 或者自己找到最大值点 到目前为止 这是我的代码 import matplo
  • JMX 的使用以及如何用于现有应用程序

    几年前我们就在 JDK 5 上开发了分布式 Web 应用程序 JMX 将如何帮助这个应用程序 1 它能帮助我监控性能 内存 CPU 以及网络和磁盘 IO 吗 2 如果是这样 那么应用程序部署在多个服务器中 我如何在一个仪表板中进行监控 3
  • 为什么所有的 Active Record 都讨厌? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何在 Ruby 中将…(省略号)更改为…(三个句点)?

    我正在解析这个文件 http msdn microsoft com en us library ms189782 aspx using nokogiri 我发现有一些 省略号 该页面中的字符且无法删除 我想知道如何用Ruby来替换所有 省略
  • JavaScript 正则表达式异常(无效组)

    我有以下正则表达式 lt index d g 我正在尝试在像这样的字符串中查找索引整数 some text index 1 id 2 value 3 该表达式在 php 中工作正常 但在 javascript 中不起作用 我收到以下错误 未
  • 以正常形式打印浮点数,而不是指数形式/科学记数法[重复]

    这个问题在这里已经有答案了 我有一个以指数形式打印的数字 gt gt gt gt gt gt a 1 1221759 gt gt gt print a 8 184920266599223e 07 gt gt gt 我怎样才能让它以正常形式打
  • 如何在express和node中从html表单发送put请求

    我有一个用于编辑对象的表单 我想使用 Express 3 x 和 node js 正确处理它 编辑物品路线 item edit显示用于编辑对象的表单 我想我有三个选择 1 放置一个值为 edit 的隐藏字段 这样我就可以在express中正
  • 使用 MVCMailer 尝试发送到非本地电子邮件地址时,邮件服务器需要身份验证

    我想向用户发送新闻通讯电子邮件 我已经这样做了 public ActionResult SendNewsLetter userMailer NewsLetter Send return View 在 userMailer 类中 public
  • 基于超简单静态文件(html)的php站点缓存

    我有一个网站 基本上只显示内容 没有任何表格和后期处理 该网站基于 PHP 并托管在共享主机上 它很少改变 我想为此网站启用缓存 它是共享托管 所以我需要一个解决方案 不使用 Memcached 不需要将我的网站移至 VPS 不要使用APC
  • 如何删除firestore自动生成的单字段索引?

    update 太长了 如果您到达这里 您应该重新检查构建数据库的方式 随着时间的推移 您的文档可能会被消耗 由于嵌套列表等 原问题 我有一个包含很多字段的文档集合 我不查询文档 甚至不查询简单的查询 我只使用 db collection m
  • Spark Streaming 中的 ML 模型更新

    我通过 Spark 批处理作业在 HDFS 中保留了机器学习模型 并且我在 Spark 流中使用它 基本上 ML 模型从 Spark Driver 广播到所有执行器 有人可以建议我如何在不停止 Spark Streaming 作业的情况下实
  • 如何将 jQuery UI 日期选择器初始化为查询字符串中的日期?

    鉴于此标记 Calendar html date 1 2 2003 div class inlinedatepicker div 这将毫不费力地显示一个内联日期选择器 太棒了 如何将日期选择器预设为通过查询字符串传入的日期 请注意 在本例中
  • Materialise CSS 侧面导航不起作用

    我已经对 Materialise 运行进行了基本设置 除了滑出侧面导航之外 一切似乎都很好 这是我的代码 菜单 ul class right hide on med and down li a class dropdown button h
  • 是否可以将 ComboBox DisplayMember 设置为列表中对象的属性?

    我有一个正在填充的 ComboBox 其中 ComboBox Items 中的每个对象都是对象列表 目前 组合框为每个项目显示 集合 是否可以让组合框显示列表中包含组合框项目的第一个对象的成员 我目前正在通过以下内容填充组合框项目 fore
  • vue组件设置child的数据值

    我正在使用 vue 轮播 https ssense github io vue carousel api https ssense github io vue carousel api 它运行良好 但我需要重置轮播 我可以看到当前页面有一个
  • 如何在node.js EJS视图中转义HTML?

    我想转义 bloglist i Text 字段中的 html 如何使用 EJS 做到这一点 h1 h1 p Welcome to p h3 h3 div div
  • R:从数据表中选择范围内的值

    我在 R 中有一个数据表 name date John 1156649280 Adam 1255701960 etc 我想获取日期在某个范围内的所有行 在 SQL 中 我可能会说SELECT FROM mytable WHERE date
  • Scala 映射 foreach

    given val m Map String Int a gt 1 b gt 2 c gt 3 m foreach key String value Int gt println gt gt gt key key value value 为
  • 将 sys.stdout 重定向到 python 日志记录

    所以现在我们有很多 python 脚本 我们正在尝试整合它们并修复和冗余 我们正在尝试做的事情之一是确保所有 sys stdout sys stderr 都进入 python 日志记录模块 现在最重要的是 我们希望打印出以下内容
  • 如何在Python中像ERB一样进行模板化? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 ERB http ruby doc org stdlib 2 3 0 libdoc erb rdoc E