附加到params的GSP表单参数 - 需要覆盖

时间:2015-02-16 12:17:43

标签: grails groovy gsp

我有以下表格:

<g:form controller="${controllerName}" action="${actionName}" params="${params}">
    <g:select name="publisher_status" from="${['Active']}" value="${publisher_status}" noSelection="${[null:'No Filter']}" />
    <button type="submit" class="btn btn-default btn-primary btn-sm ">Apply</button>     
</g:form>

每次我提交此表单时,publisher_status值都会附加到前一个表单,从而生成一个类似publisher_status=[null,'Active']等的列表。我真正需要的是覆盖以前的值,所以我总是只有一个字符串。我在上面和上面的表格中尝试了以下内容,但它不起作用:

  <g:set var="params" value="${params.remove('publisher_status')?params:params}"/>

有关如何解决此问题的任何建议?

1 个答案:

答案 0 :(得分:2)

您无法设置params,但您可以过滤传递给g:form的地图:

<g:form controller="${controllerName}" action="${actionName}"
        params="${params.findAll {k, v -> k != 'publisher_status'}}">