Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Grails复选框始终为false_Grails - Fatal编程技术网

Grails复选框始终为false

Grails复选框始终为false,grails,Grails,第一次使用Grails中的复选框。我想让复选框做的是,如果选中,只需将布尔变量设置为true 从form.gsp: <div class="form-group col-md-12 ${hasErrors(bean: apiInstance, field: 'oneWay', 'error')} "> <label for="oneWay"> <g:message code="api.oneway.label" default="One Way" /

第一次使用Grails中的复选框。我想让复选框做的是,如果选中,只需将布尔变量设置为true

从form.gsp:

 <div class="form-group  col-md-12 ${hasErrors(bean: apiInstance, field: 'oneWay', 'error')} ">
 <label for="oneWay">
     <g:message code="api.oneway.label" default="One Way" />
 </label>
 <g:checkBox name="oneWay " value="true" checked="${apiInstance?.oneWay == 'true'}"/>
 </div>
在从控制器调用的服务中,我检查单向的状态:

    if (apiInstance.oneWay == true) {
        log.info("One way flag is set.")
    } else {
        log.info("One way flag is not set.")
    }

即使我选中复选框,它也始终为false。我犯了什么愚蠢的行为D

我认为您不需要使用值和选中的属性,只需使用如下值:

<g:checkBox name="oneWay " value="${apiInstance?.oneWay}" />


${apinstance?.oneWay==true}
或干脆
${apinstance?.oneWay}
@SaschaFrinken,称为
字符串驱动开发
<g:checkBox name="oneWay " value="${apiInstance?.oneWay}" />