uni-app uni-admin 可重复注册超级管理员

uni-app uni-admin 可重复注册超级管理员

操作步骤:

  • 通过hbuilderx新建uni-admin项目就存在问题

预期结果:

  • 限制只能新建一个超级管理员

实际结果:

  • 可重复新建多个超级管理员

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()

更多关于uni-app uni-admin 可重复注册超级管理员的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

支付宝云存在该问题,阿里云下 role: ‘admin’ 正常运行,麻烦修复下

更多关于uni-app uni-admin 可重复注册超级管理员的实战教程也可以访问 https://www.itying.com/category-93-b0.html


我今天也发现了,这种bug竟然都能存在,要出大事啊

在控制台给role字段设置下数组索引。

回到顶部