传统的方式似乎很好:
@view_config(route_name='new', renderer='new.mako')
return {'tasks': tasks}
但有时我可能需要很好地控制我正在渲染的内容,即我可能会根据条件渲染不同的视图。看到这个伪代码:
@view_config(route_name='new')
def new_view(request):
if request.att == something:
one_dict = ...
a = render( "new.mako", one_dict)
else:
another_dict = ...
a = render( "new_special.mako", one_dict)
return a
如何使用 Pyramid 的 Mako 引擎自己渲染任意模板并将其作为响应返回?