入力要素を具体的に並べ替える必要があるフォームがあります。したがって、私のフォームは次のようになります。
<input type="text" name="name"/>
<select name="contacts.first">...</select>
<select name="contacts.second">...</select>
...
このフォームを検証するために使用しようとしているコマンド オブジェクトがあります。ただし、正しくマップすることはできないようです。私のコマンドオブジェクトは次のようになります:
@Validatable
class MyCommand {
def name
def contacts
static constraints = { /* ... */ }
}
私のコントローラーのアクションは次のようになります。
def update = { MyCommand cmd ->
if (cmd.validate()) {
/* ... */
}
}
私が見るとcmd.contacts
、それはnullです。contacts
の代わりに各 select に名前を付けるcontacts.first
と、期待どおりの値の配列になりますが、これらの項目が特定の順序になっていることを確認するためにブラウザーに依存したくありませんでした。これを機能させるための提案はありますか?正しい順序が重要です。