1

Grails で次のコマンド オブジェクトを使用します。

class commandA implements commandObjectType {
    String a

    static constraints = {
        a blank: false
    }
}

class commandB extends commandA {
    String b
}

commandB オブジェクトの b にカスタム フィールド検証を実装するにはどうすればよいでしょうか? 私の知る限り、クロージャーをオーバーライドしたり、他の方法で変更したりすることはできません..

とにかくこれを行うことはできますか?クロージャーで「シフト」を試みましたが、成功しませんでした.フィールドとインラインでバリデーターを指定することは可能ですか?

4

2 に答える 2

1

制約の共有がコマンド オブジェクトで機能するかどうかはわかりませんが、次のようなことを試すことができます。

class commandB extends commandA {
    String b

    static constraints = {
        importFrom commandA
    }
}

制約の使用法については、Grails のドキュメントを参照してください。

于 2012-12-19T15:55:37.720 に答える
0

通常どおり、「b」フィールドの検証ルールを使用して、commandB で「制約」ブロックを定義するだけです。検証は、「a」フィールドと「b」フィールドの両方で機能するはずです。

于 2012-12-19T13:26:02.463 に答える