2011-06-21 4 views
0

私はGrailsアプリケーションに春のセキュリティプラグインを追加しました。ユーザーとその関連する役割の追加に関する質問があります。私はブートストラップでそれを正しく行うことができましたが、GSPページでそれをどうやって行うのかと思っていました。私は対応するフィールドを持つgspページを持っています。サブミットされると、saveメソッドが呼び出されます。私のユーザドメインコントローラはSecUserを拡張します。春のセキュリティコアでユーザーを追加する方法

class User extends SecUser { 

    String fname 
    String lname 
    Date dateCreated 
    Date lastUpdated 

    static constraints = { 
     fname  (blank:false) 
     lname  (blank:false) 
    } 
    String toString(){ 
     fname & " " & lname 
    } 
} 

ユーザーが保存されると、ユーザーはSecUserではなく項目のみが保存されます。誰もがすべてのユーザーデータを保存するための例GSPとコントローラコードを持っていますか?

答えて

0

私は二つの問題を持っていることを感じる:あなたのUserクラスにCRUD(含むGSP)を作成する方法

  1. あなたのクラスのデータとその継承されたフィールドを永続化する方法

最初の質問について: GSPとUserクラスにCRUDが必要なものをすべて作成するには、スキャフォールディングを使用することをお勧めします。もしあなたのためにこのすべてを世話してください。

あなたUserControllerでのすべてを削除するかのみ次のコードで別のコントローラを作成:

class UserController { 
    static scaffold = User 
} 

次に、あなたUserControllerで({your_app} /ユーザ/指数)に移動し、すべてがそこにあるべきです。

あなたは、実際のコントローラとGSPSを持っているし、彼らがどのように動作するか、変更、Grailsのコマンドを使用する場合:grails generate-all your.package.User 2番目の質問については

あなたSecUserクラスに問題がある場合を除き(過渡例えばフィールド)は、すべてのフィールドがSecUserから継承されたUser.save(て保存する必要があります)

、私はそれが行く方法を知ってみましょうヴィンセントジゲーレ

+0

これは助けてくれてありがとう。私はこれを以前にチェックしなかったことを申し訳ありません。私はそれが必要であることを知りませんでした – jason

0

ユーザクラスを生成するために同梱のスクリプトを使用しましたか?

GrailsのS2-クイックスタート DOMAIN_CLASS_PACKAGE USER_CLASS_NAME ROLE_CLASS_NAME [REQUESTMAP_CLASS_NAME]

など。

GrailsのS2-クイックスタートcom.yourappユーザー権限私はGrailsのアプリでは、結果として、UserクラスがSecUserを延長しなかったことでした

+0

私はあなたが私の質問と混同されるかもしれないと思います。今私はこのコードを使用して私のブートストラップにユーザーを追加します:def newUser = new mgr.User(username: "newUser"、password:springSecurityService。encodePassword( "管理者")、FNAME: "ジェイソン"、LNAME: "LNAME"、dateCreate:今日、lastUpdated:今日、有効:真)\t \t newUser.save()\t SecUserSecRole.create NEWUSER、のAdminRole私の質問がありますどのようにGSPとコントローラファイルにユーザを追加するのですか? – jason

+0

お返事ありがとうございます。いいえ、私はSecUserを拡張したかったのです。私がSecurity Coreを追加したとき、私は既にUserドメインを持っていたので、私はそれを拡張したがっていました。問題は、私がビューを生成するとき、ビューの作成と編集はロールのために何も追加しないということです。私は自分のコードを書いてユーザーを追加することができましたが、ユーザーのSecUserとSecRoleを削除する方法を理解することができないため、ユーザーを削除したいとき(私はユーザーの主キーはわかりますがそれは削除するのに十分ではないようです)どんな助けが素晴らしいだろう – jason

関連する問題