Grails—在任何控制器中都可用的写入方法

Grails—在任何控制器中都可用的写入方法,grails,groovy,spring-security,metaprogramming,Grails,Groovy,Spring Security,Metaprogramming,我是groovy/grails领域的新手,所以请原谅我问了一个简单的问题。我很确定这可以通过元编程实现,即将方法注入grails控制器类的定义中。有人能告诉我这个注入应该写在哪里吗(Bootstrap.groovy?)。 我正在尝试用Spring安全核心插件创建currentUser()方法,我可以在任何控制器中使用它 这两篇帖子回答了您的问题: P>但是还有一些其他的方法你可以考虑… 您可以将一个“SecurityService”注入需要了解当前用户的控制器,并在其上加上“getCu

我是groovy/grails领域的新手,所以请原谅我问了一个简单的问题。我很确定这可以通过元编程实现,即将方法注入grails控制器类的定义中。有人能告诉我这个注入应该写在哪里吗(Bootstrap.groovy?)。
我正在尝试用Spring安全核心插件创建currentUser()方法,我可以在任何控制器中使用它

这两篇帖子回答了您的问题:

<> P>但是还有一些其他的方法你可以考虑…

您可以将一个“SecurityService”注入需要了解当前用户的控制器,并在其上加上“getCurrentUser”


您可以使用Grails过滤器将“currentUser”添加到所有控制器可用的参数映射中。我喜欢这种方法,因为我通常使用过滤器来实现安全性。过滤器还可以在视图渲染之前将其添加到所有模型中,以便您的所有视图都可以访问它。

有什么原因您愿意这样做而不是使用
springSecurityService。currentUser
?实际上,在我问问题的时候,我不知道springSecurityService bean中的那个属性