金字塔提供了一个预渲染器
from repoze.events import subscriber
from pyramid.events import BeforeRender
@subscriber(BeforeRender)
def add_global(event):
print event['renderer_name'] #this is the renderer name
print event['renderer_info'].name #same with event['renderer_name']
但没用。如果我更改或删除event['renderer\uname']和event['renderer\uinfo'].name,它也可以在config中找到渲染器(模板文件)。在
^{pr2}$我想在中使用渲染器的名称视图.py或者在根工厂中更改渲染器值,以便可以更改所有模板。在
在呈现之前调用BeforeRender。换句话说,它是在
view.py
之后调用的,我假设您放置了视图。root_factory
在此之前也被称为。root_factory
用于创建用于遍历的根节点。这将返回一个上下文。如果没有上下文,则不会调用视图,并且金字塔会引发上下文找不到错误。在BeforeRender在视图返回某些参数后调用,或者可能在调用返回呈现器响应的
renderToResponse
之前调用。可以从视图中传递渲染器。在http://docs.pylonsproject.org/projects/pyramid/en/1.3-branch/narr/templates.html#using-templates-directly
设置视图时必须删除renderer参数。在
相关问题 更多 >
编程相关推荐