一个vs多个复选框

时间:2012-06-01 01:44:32

标签: grails params

我想在表单中添加一些<g:checkBox name="bob" value="${i}" />并在params中迭代它们:

def blah = params.bob.collect { Bob.get(it) }

当表单上有多个复选框并且已选中(params.bob是某种类型的List)时,似乎工作正常。但是,如果表单上只显示了一个复选框,则选中params.bobString而不是List,其中包含一个String

处理此问题的最佳方法是什么?我现在正在做这样的事情:

if (params.bob instanceof String) {
    blah = [Bob.get(params.bob)]
}
else {
    blah = params.bob.collect { Bob.get(it) }
}

有没有办法强制paramsList制作bob,这样我就不必有这个讨厌的if

1 个答案:

答案 0 :(得分:3)

您是否尝试过:params.list('bob') see Handling Multi Parameters