不在controller如何才能得到request或者是session?
oksonic
2009-12-29
在使用Acegi 插件中想实现登录后能把一些信息加入session中,可不知道如何才能实现。
后来看到可以使用监听事件来处理,但事件中却不知道如何获取request或是session. |
|
wusema
2010-01-04
消灭零回复。
不需要监听事件就可以在Controller里控制 session 的,直接使用session关键字。 session.department?:getLoginUserDeptment() getLoginUserDeptment为自定义的函数,返回department. |
|
oksonic
2010-01-05
在session中是可以得到登录的用户信息,可是我要的是仅在登录后得到一个对像,并把这个对像放到session中去,总不能每个action都去做这件事吧。
|
|
lcllcl987
2010-01-07
class UserController {
def scaffold = User def authenticate = { println "${params.login}--- ${params.password}" def user = User.findByLoginAndPassword(params.login, params.password) if(user){ session.user = user flash.message = "Hello ${user.name}!" redirect(controller:"plugin", action:"list") }else{ flash.message = "Sorry, ${params.login}. Please try again." redirect(action:"login") } } def login = {} def logout = { session.user = null; redirect(action:"login") } } |
|
agile_boy
2010-01-08
你可以参考官方User Guide的左侧有个Controller 所支持的全局变量
|