如何获取当前用户登录grails的id?

ruh*_*een 5 grails

我想在注册时显示有关用户登录的信息,例如他的详细信息等...怎么做?因为我刚接触grails plz帮助!我使用Spring安全插件

Kel*_*lly 14

那么你可以使用springSecurityService来获取控制器中的一些用户信息:

    class MyController {
      def springSecurityService

      def myAction() {
        def principal = springSecurityService.principal
        String username = principal.username
        ...
      }
     }
Run Code Online (Sandbox Code Playgroud)

或者在gsp中

    <sec:loggedInUserInfo field="username" />
Run Code Online (Sandbox Code Playgroud)

这是一个相当普遍的问题.


Igo*_*nov 10

定义(在需要用户ID的控制器或服务中):

SpringSecurityService springSecurityService
Run Code Online (Sandbox Code Playgroud)

并尝试:

springSecurityService.currentUser.id //loads user from db, and returns its id
Run Code Online (Sandbox Code Playgroud)

要么:

springSecurityService.principal.id //if you need just id
Run Code Online (Sandbox Code Playgroud)