beego 模板中对变量的对比

使用beego的view中的range嵌套使用if

一. 使用select下拉是用if判断然后给默认选中

<select  name="Pid">
    {{$pid := .department.Pid}}
     {{range $value := .list}}
          <option lay-skin="primary" {{if eq $value.id $pid}} selected="selected" {{end}}
               class="layui-input" value="{{$value.id}}">{{$value.name}}</option>
      {{end}}
</select>

错误信息

2020/04/30 12:39:21.736 [E] [server.go:2697]  template: department/edit.html:46:60: executing "department/edit.html" at <eq $value.id $pid>: error calling eq: invalid type for comparison

使用compare替换eq即可解决

<select  name="Pid">
    {{$pid := .department.Pid}}
     {{range $value := .list}}
          <option lay-skin="primary" {{if compare $value.id $pid}} selected="selected" {{end}}
               class="layui-input" value="{{$value.id}}">{{$value.name}}</option>
      {{end}}
</select>
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 2

重要的一点 模板view里面多个变量判断一定用$开头,不然容易报错

3年前 评论

谢谢解决了我的问题

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!