筛选区块-表单里下拉菜单(单选)字段的 允许多选 按钮和 运算符 功能冲突

* 描述问题

筛选区块-表单里下拉菜单(单选)字段的允许多选按钮和运算符功能冲突

* 运行环境

  • NocoBase 版本:1.5.10
  • 数据库种类与版本: MariaDB 11.6.2
  • 操作系统:Windows 11
    -浏览器及版本:Edge 132
  • 部署方式:Docker
  • Docker 镜像版本:nocobase/nocobase:latest
  • NodeJS 版本:

如何重现

1 创建 筛选区块-表单
2 添加一个字段,该字段在数据表里是下拉菜单(单选)
问题1:查看这个下拉框的属性,里面是默认选择了允许多选,运算符是等于,但实际上这个下拉框还是单选模式,见图1

3 将允许多选取消再选中,下拉框可以多选
问题2:此时只要下拉框里有内容,不管是单个还是多个选项,点击筛选按钮都会报错:
Invalid value { [Symbol(eq)]: ‘****’ }

4 将运算符由默认的 等于 改为 包含任何一个,下拉框可以正常选择和筛选

问题3:此时允许多选字段消失了,即使将运算符改回等于,也不会再显示,从行为看是选中了允许多选,因为此时下拉框里有任何内容,点击筛选按钮也会报错,和问题2类似
见图2

预期行为

创建下拉菜单(单选)字段后,允许多选按钮默认应该是未选中状态,或者不显示此按钮,通过运算符来控制是否允许多选

截图

图1:默认情况,此时虽然允许多选是勾选状态,但下拉框实际上只能单选,筛选功能正常
如果先取消再勾选允许多选按钮,此时下拉框可以多选,但筛选报错
image

图2:将运算符改为包含任何一个后,允许多选按钮消失,此时下拉框可以正常多选,筛选功能正常
再将运算符改回等于后,允许多选按钮也未出现,此时下拉框是多选状态,但筛选报错
image

日志

缺陷 等我们修复下

已经修复,选项字段去掉允许多选配置项,运算符包含就可以实现多选功能,请使用最新代码检查问题是否解决