BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / python / #11684同步于 2016/1/18
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Python机器人发帖

用过jinja的进,问题问题

ccdyh
2016/1/18镜像同步8 回复
一个python flask后台的server,用到了jinja,所以有个layout.html是所有前端页面的框架,但是layout需要显示后台返回的内容,怎么做。。。 我表达太差,好人可以细问,我慢慢说。。。
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
nuanyangyang机器人#1 · 2016/1/18
可以作为参数传入吗?比如加一个{{ generated_content }}这样的标签(忘了具体语法了),然后把generated_content赋值为后台生成的内容。
icybee机器人#2 · 2016/1/18
摸摸头,以jinjia的官方demo说明, <title>{% block title %}{% endblock %}</title> <ul> {% for user in users %} <li><a href="{{ user.url }}">{{ user.username }}</a></li> {% endfor %} </ul> {{}}包裹的内容就是从后台controller传入的参数,不知道LZ的问题出在哪里
jh1机器人#3 · 2016/1/18
楼上的大神正解。 后台是这样的? http://jinja.pocoo.org/docs/dev/intro/#basic-api-usage
ccdyh机器人#4 · 2016/1/18
对的。。 flask确实是这样传参的,但我这里比较困惑的就在于jinja的layout.html,它属于模板,不像是普通的页面可以返回,所以比较纠结。想不到好的解决方法。 【 在 nuanyangyang 的大作中提到: 】 : 可以作为参数传入吗?比如加一个{{ generated_content }}这样的标签(忘了具体语法了),然后把generated_content赋值为后台生成的内容。
ccdyh机器人#5 · 2016/1/18
如果细化一点来讲, 我后台有一个专门统计某内容的函数, 我希望这个函数的结果实时反映在jinja的模板中的layout.html,这个layout.html是所有页面都依赖的部分,不是可以即时返回的页面,所以不知道参数怎么返回。。 【 在 icybee 的大作中提到: 】 : 摸摸头,以jinjia的官方demo说明, : <title>{% block title %}{% endblock %}</title> : <ul> : ...................
ccdyh机器人#6 · 2016/1/18
如果细化一点来讲, 我后台有一个专门统计某内容的函数, 我希望这个函数的结果实时反映在jinja的模板中的layout.html,这个layout.html是所有页面都依赖的部分,不是可以即时返回的页面,所以不知道参数怎么返回。。 【 在 jh1 的大作中提到: 】 : 楼上的大神正解。 : 后台是这样的? : http://jinja.pocoo.org/docs/dev/intro/#basic-api-usage
nuanyangyang机器人#7 · 2016/1/18
【 在 ccdyh 的大作中提到: 】 : 如果细化一点来讲, : 我后台有一个专门统计某内容的函数, : 我希望这个函数的结果实时反映在jinja的模板中的layout.html,这个layout.html是所有页面都依赖的部分,不是可以即时返回的页面,所以不知道参数怎么返回。。 实时啊,那就已经不是Jinja能够掌控的范围了。Jinja可以想象成一个稍微强大一点的printf函数,输入模版+参数,输出字符串,仅此而已,它只工作在服务器端。如果你要实时控制页面内容,你需要AJAX。这是另外一系列的技术。问问google?
icybee机器人#8 · 2016/1/18
继续摸头,LZ意思是不是后台一个demon或者crontab在实时刷数据,然后希望layout内展示? 如果是:后台统计函数实时将数据写入文件/内存数据库/数据库中,flask的contoller每次处理请求时读取文件/内存数据库/数据库 中的数据,通过jinjia渲染后输出? 另:全部页面都依赖的话,两种解决方案,一是所有依赖controller中都给layout传入数据需要的参数,另一种是把这部分逻辑抽出来做一个jsonapi,从layout中用ajax调这个api 【 在 ccdyh 的大作中提到: 】 : 如果细化一点来讲, : 我后台有一个专门统计某内容的函数, : 我希望这个函数的结果实时反映在jinja的模板中的layout.html,这个layout.html是所有页面都依赖的部分,不是可以即时返回的页面,所以不知道参数怎么返回。。