是否有像Grails一样的Django上下文处理器?

时间:2012-02-09 01:14:08

标签: grails

我想输出一个在所有模板中都是全局的值,甚至是Grails中的布局,比如Django的上下文处理器,你可以渲染上下文并将其用作模板中的全局变量。

Grails中有这样的概念吗?而且,我如何在布局中使用它?

1 个答案:

答案 0 :(得分:-3)

我根本不熟悉Django。在google中查找Django的上下文处理器,我想我明白了。基本上它配置可注入每个模板的可重用数据?无论如何,据我所知,Grails中没有这样的东西。您可以尝试以下方法作为解决方法。

使用ApplicationContext

每个视图都可以访问applicationContext。因此,创建一个包含所需数据的服务,假设它被称为fooService,并且您想要的数据项是名为bar的服务中的字段(当然也可以是一种方法)。然后在您的视图中执行$ {applicationContext.fooService.bar}。用于在视图中访问applicationContext的资源:http://mrhaki.blogspot.com/2011/11/grails-goodness-get-grailsapplication.html

使用您的布局

我不确定这个,所以请自担风险。最重要的当然是非常冗长。在不同的视图中反复调用它会很烦人。因此,请调用它一次,并使用g:set将其设置为布局中的变量。我认为变量将在每个使用该布局的视图中可用....但不确定。以下是g:set - >的文档http://grails.org/doc/latest/ref/Tags/set.html

如果我没有得到python中的上下文处理器,我很乐意再试一次......