我正在使用spring security,我需要在控制器中获取User域对象。
如果我致电SpringSecurityService.getPrincipal()
,我会找回org.codehaus.groovy.grails.plugins.springsecurity.GrailsUser
类型的对象。但是,我正在寻找的是我在Config.groovy
中定义的用户域对象,如下所示:
grails.plugins.springsecurity.userLookup.userDomainClassName = 'project.auth.User'
如何才能最好地获取用户域对象?
答案 0 :(得分:8)
使用GrailsUser实例中的缓存ID加载用户实例:
def user = User.get(SpringSecurityService.principal.id)