Imが...
が(後でデータバインディングで使用される)、いくつかの異なるプレフィックスそのフィールドのを持つ巨大なフォームを持っている場合でありますコマンドオブジェクトを介して検証しようとしています...しかし、プレフィックスに使用される素敵なDOTが私に苦労していて、コマンドオブジェクトに適切にマップされた名前を得ることができません。のGrailsコマンドオブジェクトとフィールドがここにGrails 1.3.7を使用して
<input name="dealer.name" value="${dealer.name}" type="text">
とコマンドオブジェクトについて:
私たちは別の方法やマップでそれを見て....あれば何class somethingCommand {
String name
Map dealer = [:]
static constraints = {
dealer validator: {
val, obj ->
obj.properties["name"] != ""
}
}
}
形で
は、このようなフィールドのようなフィールドを持っていますコマンドオブジェクトに渡す前のパラメータ... grails magicを使わずにコマンドオブジェクトにパラメータを渡す方法は?あなたは
def dealerMap = params["dealer"]
を介して、コントローラで「ディーラー」のマップを取得し、その後、手でディーラーのコマンドopjectを作成してマップの内容を結合することができる
TNX
が最終的な実装である: DEF docheck = {DealerformCommand ZCMD - > \t DEF cmdParams = [:] \t cmdParams [ '郵便番号'] = paramsは[ "zipCode.name"] \t ZCMD =新しいDealerformCommand() \t bindData(ZCMD、cmdParams) zcmd.validate() IF(zcmd.hasErrors()){ \t \t \tのprintln「\ NITはprovidiありますNGエラー:>>>>>>>>>>>}」 zcmd.errors.each { のprintlnそれ } \t}他{ \t \tのprintln "\ NITテスト" \tを通過した} \tレンダービュー: 'someForm' } – Sepi