di
di
  • 发布:2020-03-04 21:19
  • 更新:2020-03-06 12:17
  • 阅读:1161

关于云函数的问题

分类:uniCloud

cloudfunctions-aliyun\add-member\index.js 中的
const memberInDb = await memberCollection.where({
phone
}).get();

这个怎么理解也应该是“phone”=phone 把,sql语句 应该是select * form member where “phone”=phone

没有这和“phone”=XXX,他怎么能知道是该查询 age字段还是phone字段? 求解惑。谢谢

\cloudfunctions-aliyun\member-list\index.js 中

db$1.collection('member_list').aggregate().match(options)
这个options 不就是相当于sql的where吗? 可是我看集合了没有 validateResult.username === 'admin' 这样的数据啊 怎么匹配的啊

2020-03-04 21:19 负责人:无 分享
已邀请:
DCloud_uniCloud_WYQ

DCloud_uniCloud_WYQ

di

di (作者) - 80后it男

首先,很感谢你的解答,
await memberCollection.where({
phone
}).get();

因为云函数不太方便调试,我也就不知道这个phone是个什么东西了,如果他是个值23,我理解成这样了,
await memberCollection.where({
23
}).get();

{
age: 23 ,
phone: 13579
}

实在不好意思,我是做后端的所以请你见谅,麻烦你再重新解答下我第二个问题,也不知道我这次把问题说明白了没?db$1.collection('member_list').aggregate().match(options)

第二个问题,三元用算符我懂,我的意思是, 如果要这样匹配validateResult.username === 'admin',起码需要数据中有个字段名叫username吧,比如

第三个问题 cloudfunctions-aliyun\member-list\index.js 和 cloudfunctions-module/src/api/member-list/member-list.js的关系? 我们上传的不是cloudfunctions-aliyun下的吗?

  • DCloud_uniCloud_WYQ

    你看一下,cloudfunctions-module/src/api/member-list/member-list.js 这个文件,validateResult 是解析前端上传的token得到的结果

    2020-03-06 10:39

di

di (作者) - 80后it男

好吧 我还是没说明白,validateResult 是解析前端上传的token得到的结果 这个我也懂,如果当前用户是abc,要匹配abc 添加过的数据。可是
db$1.collection('member_list').aggregate().match(operator_username: “abc”)

第三个问题 cloudfunctions-aliyun\member-list\index.js 和 cloudfunctions-module/src/api/member-list/member-list.js的关系? 我们上传的不是cloudfunctions-aliyun下的吗?
如果我要改一下查询条件,比如
const options = validateResult.username === 'admin' ? {} : {
operator_username: validateResult.username,
city: 0
}
我不是应该在 cloudfunctions-aliyun\member-list\index.js中修改吗?

di

di (作者) - 80后it男

我的意思是operator_username 这个没有在数据库中存储,这里明显没有保存操作者信息啊

  • DCloud_uniCloud_WYQ

    add_member里面好像是添加了operator_username的,不知道你这里为什么没有。另外查询都是用的admin也就是没有区分operator_username,没有operator_username也没有影响

    2020-03-06 14:45

该问题目前已经被锁定, 无法添加新回复