我有一个表格,我必须专门订购输入元素。所以我的表格看起来像这样:
<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
,它是空的。如果我只命名每个 selectcontacts
而不是contacts.first
,它是一个预期的值数组,但我不想依赖浏览器来确保这些项目按特定顺序排列。对这项工作有什么建议吗?正确的顺序至关重要。