~momoji.技术架构及算法~
选取python3为开发语言,版本python 3.7.3;
web架构为pyramid;
数据库访问采用sqlalchemy;
使用jinja2模板,也提供api,但非完全前后端分离;
前端使用了echarts2;
考虑该站点依靠iis挂了几个应用,80端口已占就用iis做了application request routing 和 url rewrite,后续考虑换为nginx;
数据库mysql,版本mysql 8.0.16.0;后续考虑换位文件系统;
存储结构具有为单父属性的节点,即tree或者multi-tree;但最终实现可成环的有向图,非dag(因为有向且成环);
momoji.技术架构及算法 by 飞~甜 @ 2019-06-11 14:56:51
切到该章
收藏
从此续写
~jinja2模板~
初次体验jinja2模板;include,macro,import,变量绑定,集合遍历,loop属性的使用,函数的使用,管道;
jinja2模板 by 飞~甜 @ 2019-06-11 15:47:02
切到该章
收藏
从此续写
~jinja2和pyramid的renderer~
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输出;
jinja2和pyramid的renderer by 飞~甜 @ 2019-06-11 15:59:11
切到该章
收藏
从此续写
last by 飞~甜 @ 2019-06-11 15:59:11
章节模式
复制地址