repoze.bfg web框架的chameleon.genshi模板绑定

repoze.bfg.chameleon_genshi的Python项目详细描述


休息。bfg。变色龙

变色龙Genshi样式模板支架的绑定 repoze.bfg。请参阅Chameleon website中的chameleon.genshi模板 语言细节。

bfg下使用repoze.bfg.chameleon_genshi的api是 与文档中用于chameleon.zpt`模板的模板相同 在BFG docs的“模板化”章节中。 只有模板语言本身(genshi vs.zpt)和import 位置(R.B.变色龙与R.B.变色龙)不同。

例如:

from repoze.bfg.chameleon_genshi import render_template_to_response
render_template_to_response('relative/path/to/template')

relative/path/to/template相对于中的包目录 定义了上述代码。

另请参见 提供相同服务的repoze.bfg.chameleon_genshi包 作为他们兄弟的目的。

使用时,genshi模板也可以用作bfg“渲染器” repoze.bfg.chameleon_genshi。最简单的方法是 在应用程序的configure.zcml中使用以下zcml:

<include package="repoze.bfg.chameleon_genshi"/>

一旦您的应用程序设置为处理此zcml,您的 应用程序可以指向具有 .genshi文件扩展名来自@bfg_view指令或 应用程序中的zcmlview指令。例如:

@bfg_view(renderer='templates/foo.genshi')
def someview(request):
    ....

或:

<view
  renderer="templates/foo.genshi"
  view=".views.someview"/>

如果您不想使用.genshi扩展名 chameleon.genshi模板,或者如果您不想使用zcml 注册,可以使用 add_renderer“配置器”的方法。这样做,在 run.py的bfg应用程序,在启动时调用的函数中, 使用repoze.bfg.configuration.Configurator作为config

from repoze.bfg.chameleon_genshi import renderer_factory
config.add_renderer('.cgenshi', renderer_factory)

在视图中将.cgenshi注册为呈现程序后 配置,您可以执行以下操作:

@bfg_view(renderer='templates/foo.cgenshi')
def someview(request):
    ....

其他

默认情况下,变色龙的genshi xincludes支持无法解析 repoze.bfg“资源规范” (例如my_package:foo/bar.genshi)。为了激活 xincludes类理解repoze.bfg资源规范, 调用repoze.bfg.chameleon_genshi.XIncludes.activate方法 在使用任何模板之前(例如,在流程启动时):

from repoze.bfg.chameleon_genshi import XIncludes
XIncludes.activate()

这将为 变色龙在这个过程中。

休息。bfg。变色龙

0.3(2010-07-09)

  • 默认情况下,变色龙的genshi xincludes支持无法解析 repoze.bfg“资源规范” (例如my_package:foo/bar.genshi)。为了激活 xincludes类理解repoze.bfg资源规范, 调用repoze.bfg.chameleon_genshi.XIncludes.activate方法 在使用任何模板之前(例如,在流程启动时):

    from repoze.bfg.chameleon_genshi import XIncludes
    XIncludes.activate()
    

    这将为 变色龙在这个过程中。

  • 取决于变色龙>;=1.2.8(可更换的Xincludes类)。

0.2(2010-06-15)

  • 使用bfg 1.3.x提高速度。

0.1(2009-05-02)

  • 初始版本(从bfg核心中断代码)。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何通过编程将Android置于待机状态?   java mavenjarsignerplugin在Jenkins构建期间失败,但不是在命令行上   java创建具有公共ipv4地址的HttpServer   将数据从jsp传递到servlet的java返回null   Web应用程序中的java JDBC数据库连接   java无法显示unicode字符   java webview应用程序未上载图片或视频   Android客户端Java服务器,如果订单处理方式不正确,客户端将无法连接   java在不复制备份表的情况下创建备份表   集合如何在Java中实现列表折叠   java如何配置在JBoss7中使用EntityListeners?   java JVM ClassUnloadingWithConcurrentMark标志   java如何在Maven中排除特定的单元测试   java线程在SynchronousQueue中执行put操作后挂起   java中的hibernate Comparator和可比较的负面场景   数组中的java连接元素   拖放Java,让面板落在鼠标事件上   java是一种事务管理应用程序,无需在方法上使用@transactional   java有没有办法从安卓的软键板上删除这一行?