如何访问grails控制器中的User对象

ata*_*lor 5 grails spring-security

我正在使用spring security,我需要在控制器中获取User域对象.

如果我打电话SpringSecurityService.getPrincipal(),我会找回一个类型的对象org.codehaus.groovy.grails.plugins.springsecurity.GrailsUser.但是,我正在寻找的是我在我Config.groovy喜欢的用户域对象:

grails.plugins.springsecurity.userLookup.userDomainClassName = 'project.auth.User'
Run Code Online (Sandbox Code Playgroud)

我怎样才能最好地获取用户域对象?

Bur*_*ith 8

使用GrailsUser实例中的缓存ID加载用户实例:

def user = User.get(SpringSecurityService.principal.id)
Run Code Online (Sandbox Code Playgroud)