grails - 如何将 id 列表绑定(bind)到 grails 中的命令对象?

标签 grails groovy data-binding grails-2.2 command-objects

假设当您提交表单时,它会发送一个 id 列表。

<form action="/process">
<input type="hidden" name="ids" value="4, 6, 10, 14, 20, 56" >
<input type="submit" value="Submit">
</form>

在 Controller 端
def process(EmailCommand cmd){

   //now iterating over registrations after data binding
   cmd.ids.each {

    }
}


//Command Object
class EmailCommand {
  List<Registration> ids
}

我想将传递给 Controller ​​的所有 id 绑定(bind)到 EmailCommand 命令对象中的 ids 列表。我怎样才能实现它?我很感激任何帮助!谢谢!

最佳答案

会是这样的

<form action="/process">
    <input type="hidden" name="ids[0].id" value="4" >
    <input type="hidden" name="ids[1].id" value="6" >
    <input type="hidden" name="ids[2].id" value="10" >
    <input type="hidden" name="ids[3].id" value="14" >
    <input type="hidden" name="ids[4].id" value="20" >
    <input type="hidden" name="ids[5].id" value="56" >
    <input type="submit" value="Submit">
</form>

或者,如果您想要更动态的东西:
<form action="/process">
    <g:each in="[4, 6, 10, 14, 20, 56]" var="id" status="i">
        <input type="hidden" name="ids[${i}]" value="${id}" >
    </g:each>
    <input type="submit" value="Submit">
</form>

关于grails - 如何将 id 列表绑定(bind)到 grails 中的命令对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50560050/

相关文章:

grails - 删除hasMany关系中的关联

在 ProcessResources 和过滤器中循环 Gradle

groovy - Spring Boot groovy编译错误: Unexpected token @ @ line 45

silverlight - 从 ContentTemplate 生成的内容没有设置 Silverlight ContentControl 的 DataContext

wpf - 多对多(学生、类(class)示例)Datagrid xaml 绑定(bind)

java - Spring 中任意 Model 对象的数据绑定(bind)

grails - Groovy/Grails promise / future 。没有 .resolve(1,2,3) 方法。奇怪的?

grails - 具有Spring安全性的Grails 2:defaultFailureUrl不起作用

mysql - Grails App 上的破管异常

xml - 使用新的 'file' 节点在 Gradle/Groovy 中操作 XML