0

1 つの汎用コマンドを拡張してそのカスタム バリデータを再利用すると、Grails のコマンドで問題が発生します。

Grails プロジェクトをクリーンアップすると、拡張カスタム バリデータへの参照が失われます。プロジェクトの実行中に CommandA で構文エラーを発生させ、そのエラーを元に戻してコマンドをコンパイルし直す必要があります。

ファイル: /src/groovy/app/commands/ImageCommand.groovy

class ImageCommand {
    static imageValidator = { value, command ->
        ... DO SOMETHING ...
    }
}

ファイル: /src/groovy/app/commands/CommandA.groovy

class CommandA extends ImageCommand {
    def file
    static constraints = {
        file nullable: true, blank: true, validator: imageValidator
    }
}

エラーを発生させるには、CommandA の一部を消去するだけです。

class CommandA extends ImageCommand {
    def file
    static constraints = {
        file nullable: true, blank: 
    }
}

そして、それを元に戻して再コンパイルを強制します:

class CommandA extends ImageCommand {
    def file
    static constraints = {
        file nullable: true, blank: true, validator: imageValidator
    }
}

私は何をすべきか?CommandA をさまざまな場所で使用しているため、Controller ファイルに移動できません。

*Grails 2.2.2 を使用

4

1 に答える 1