通过hbuilderx新建uni-admin项目就存在问题
l***@163.com
- 发布:2025-05-01 09:39
- 更新:2025-05-12 11:20
- 阅读:411
产品分类: uniCloud/支付宝小程序云
操作步骤:
预期结果:
限制只能新建一个超级管理员
限制只能新建一个超级管理员
实际结果:
可重复新建多个超级管理员
可重复新建多个超级管理员
bug描述:
uni-admin 可重复注册超级管理员,排查发现uni_modules\uni-id-pages\uniCloud\cloudfunctions\uni-id-co\module\register\register-admin.js文件存在问题
注:uni-id-users数据库表中role字段为数组类型
问题代码片段
const getAdminRes = await userCollection.where({
role: 'admin' // 数据库中role字段为['admin'],是数组类型,这样无法查询到相关数据
}).limit(1).get()
修复代码片段
const {
userCollection,
dbCmd // 引入command
} = require('../../common/constants')
……
……
const getAdminRes = await userCollection.where({
role: dbCmd.in(['admin']) // fixed:改为按数组查询
}).limit(1).get()
3 个回复
l***@163.com (作者)
支付宝云存在该问题,阿里云下 role: 'admin' 正常运行,麻烦修复下
h***@vip.qq.com
我今天也发现了,这种bug竟然都能存在,要出大事啊
DCloud_uniCloud_CRL
在控制台给role字段设置下数组索引。