问题
如何在网站的每个页面上实现一个窗口小部件(由数据库调用产生)?如何在PlayFramework2上实现小部件?
语境
我有一个侧边栏traditionnal Web应用程序。侧边栏包含如数据:
- 用户名,关于该帐户
- 详细信息(最后连接等)基于用户的简档
- Personnalized消息。
- 等数据从数据库中提取。
解决方案到目前为止
随着官方文档中显示,有可能使模板内模板。这是一个有趣的功能,但还不够。因为我需要数据库中的数据在我的小部件中呈现。
这将意味着:
- 获取所需栏某处的所有数据,
- 从每个控制器到每个视图传递数据,
- 最后,在每个模板,请致电与外部模板给定的数据。
我想要做的是在Symfony2框架中存在的东西。我希望能够直接调用控制器。
{% render MyController:MyActionMethod %}
如何才能实现这种机制? PS:是的,我搜索了一下。发现这个问题“类似的问题”:How to avoid passing parameters everywhere in play2?
很酷的东西,如果它确实有效。我今晚会试一试。我用这个解决方案看到的一个问题是我需要这个请求。意思是,我必须在所有模板上传递请求。 – 2012-07-12 12:02:31
'request'在所有模板中都是隐含的(即它可以直接使用) – 2012-07-12 12:26:38