跳转到主要内容

Grok中的Genshi集成

项目描述

更新 2013-05-27:我不再使用这个项目,如果有人想接管维护,请给我发邮件。

megrok.genshi

megrok.genshi使得在Grok中使用Genshi模板成为可能。由于使用不足,该项目不再维护,但仍可以作为如何在Grok中进行模板集成的示例。

有关Grok和Genshi的更多信息,请参阅

需求

  • Genshi。已与v 0.5.1进行测试。

  • Grok v0.14或更高版本。已与0.14进行测试。

安装

要在Grok下使用Genshi,您需要安装megrok.genshi作为egg并包含其zcml。最好的方法是将其作为您的应用程序的依赖项添加到setup.cfg中的install_requires列表,使其成为megrok.genshi。如果使用grokprojet创建应用程序,则setup.cfg位于项目根目录。它看起来可能如下所示

install_requires=['setuptools',
                  'grok',
                  'megrok.genshi',
                  # Add extra requirements here
                  ],

然后在您的 configure.zcml 中包含 megrok.genshi。如果您使用 grokproject 创建了应用程序,它位于 src/<项目名称>/configure.zcml。在包含 grok 的行之后添加包含行,但在当前包的 grokking 之前。它应该看起来像这样

<include package="grok" />
<include package="megrok.genshi" />
<grok:grok package="." />

然后再次运行 bin/buildout。现在您应该看到 buildout 输出类似的内容

Getting distribution for 'megrok.genshi'.
Got megrok.genshi 1.0.

这就完成了。现在您可以在 Grok 应用程序中使用 Genshi 了!

使用方法

megrok.genshi 支持将模板放置在模板目录中(例如 app_templates),因此您可以通过将 Genshi 模板放置在模板目录中来使用 Genshi,就像使用 ZPT 模板一样。尽管 Genshi 本身没有为 Genshi 模板设置标准文件扩展名,但 Grok 需要一个扩展名和类型之间的关联,以便知道每个模板的类型。megrok.genshi 将 .g 扩展名定义为 Genshi HTML 模板,.gt 扩展名定义为 Genshi 文本模板。Genshi 也可以包含模板,尽管您可以使用任何扩展名,但我们建议您使用 .gi 扩展名来包含任何模板,以避免与其他模板语言发生冲突。

您还可以将 Genshi 模板内联使用。语法如下

from megrok.genshi.components import GenshiMarkupTemplate, GenshiTextTemplate
index = GenshiMarkupTemplate('<html>the html code</html>')
index = GenshiMarkupTemplate('Text templates')

或者如果您使用文件

from megrok.genshi.components import GenshiMarkupTemplate, GenshiTextTemplate
index = GenshiMarkupTemplate(filename='thefilename.html')
index = GenshiMarkupTemplate(filename='thefilename.txt')

作者

变更记录

版本 1.0

  • 支持 Grok 0.14。(Paul Wilson)

版本 0.9

  • 首次发布

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装软件包 的更多信息。

源代码分发

megrok.genshi-1.0.zip (15.6 kB 查看哈希)

上传时间 源代码

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页