pyramid中提供了renderer机制来对函数进行渲染,并预置了多种renderer;为了统一时间/数字的输出格式,我也体验写了一个renderer,并config.add_renderer('json',sql_json_renderer);
renderer这种机制可以灵活的针对response进行不同类型的输出:当要作为api,输出json对象时,可以用这样的语句来修饰这个方法:@view_config(route_name='story.chartdata', renderer='json');
而要输为html页面时,可以用以下代码修饰:@view_config(route_name='story.add', renderer='templates/story_add.jinja2'),这里renderer指向了一个jinja2模板文件;文件里会绑定同名的变量进行html输出;