python-如何将pystache与pyramid集成?
作者:互联网
我想使用pystache在我的金字塔应用程序中提供的基于类的视图,但是我不确定如何正确地将两者集成在一起.我已经读过this,但它没有谈论使用基于类的视图.
如果要使用基于类的视图,如何为pystache创建新的渲染器?有人可以帮我吗?
另外,虽然我已经知道胡子是如何工作的,但是我似乎找不到关于python实现(pystache)的太多信息.有人可以在这里指出正确的方向吗?
解决方法:
实现MustacheRendererFactory:
class MustacheRendererFactory(object):
def __init__(self, info):
self.info = info
def __call__(self, value, system):
package, filename = resolve_asset_spec(self.info.name)
template = os.path.join(package_path(self.info.package), filename)
template_fh = open(template)
template_stream = template_fh.read()
template_fh.close()
return pystache.render(template_stream, value)
更新配置程序设置,可能在__init__.py中:
def main(global_config, **settings):
config = Configurator(settings=settings)
# ...
# Use Mustache renderer
config.add_renderer(name='.mustache',
factory='myapp.mustacherenderer.MustacheRendererFactory')
# ...
在您的意见中使用:
@view_config(route_name='myview', renderer='myapp:templates/notes.mustache')
def my_view(request):
# ...
标签:template-engine,pyramid,mustache,python 来源: https://codeday.me/bug/20191101/1982263.html