5

サインアップ時に与えられた詳細など、ログインしているユーザーに関する情報を表示したい...どうすればいいですか?? Grails は初めてなので、助けてください! Springセキュリティプラグインを使用しています

4

3 に答える 3

14

springSecurityService を使用して、コントローラーでユーザー情報を取得できます。

    class MyController {
      def springSecurityService

      def myAction() {
        def principal = springSecurityService.principal
        String username = principal.username
        ...
      }
     }

またはgspで

    <sec:loggedInUserInfo field="username" />

これはかなり一般的な質問です。

于 2012-04-24T08:18:32.240 に答える
11

定義します(コントローラー、またはユーザーIDが必要なサービスで):

SpringSecurityService springSecurityService

そして試してください:

springSecurityService.currentUser.id //loads user from db, and returns its id

また:

springSecurityService.principal.id //if you need just id
于 2012-04-24T08:17:24.210 に答える
1

これを@サービスまたはコントローラークラスの先頭に追加します

def securityService

これは、現在のユーザー ID を返します。

securityService.currentUser.id 
于 2014-07-24T14:10:37.683 に答える