小程序
小游戏
企业微信
微信支付
扫描小程序码分享
使用了云开发模板。后来自己新添加的集合不能更新。
1、 使用数据库更新api:
db.collection('XXX').doc("XXXXXX").update({})
发现不能更新预期的字段(权限已放开选了:所有用户可读,仅创建者及管理员可写)
2、除了counter集合(云开发模板自带)可以使用api更新操作,其他自己新建的都不行,请问是什么原因?
1 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
确认下记录的_openid字段是不是跟你开发用的openid一致呢
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
我是用这个云函数获取openid的和保存的是一致的
wx.cloud.callFunction({
name: 'getUserInfo',
complete: res => {
if ('xxxxxxxx' == res.result.openId) {
console.log('我是超级管理员')
this.setData({
managerFlag: false
})
}
console.log('callFunction test result: ', res.result.openId)
// 云函数入口函数
exports.main = async (event, context) => {
return event.userInfo
在客户端只能更新当前用户openID对应的记录,如果权限没问题的话,请再确认下openID
可以了,之前没理解。每个集合都要有对应的openID字段,我之前新建的集合都没有这个字段,所以更新不成功。
多谢!
客户端调用云函数会传进event,当中有自己的openid,此时运行的云函数主体有update数据库的操作,更新不成功时符合预期的吗(无论是否本openid均更新不成功)。
而且云数据库的doc.update这种怎么写在云函数中写promise,还望指教。
关键是创建集合时如何带上openid呢?
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
确认下记录的_openid字段是不是跟你开发用的openid一致呢
我是用这个云函数获取openid的和保存的是一致的
wx.cloud.callFunction({
name: 'getUserInfo',
complete: res => {
if ('xxxxxxxx' == res.result.openId) {
console.log('我是超级管理员')
this.setData({
managerFlag: false
})
}
console.log('callFunction test result: ', res.result.openId)
}
})
// 云函数入口函数
exports.main = async (event, context) => {
return event.userInfo
}
在客户端只能更新当前用户openID对应的记录,如果权限没问题的话,请再确认下openID
可以了,之前没理解。每个集合都要有对应的openID字段,我之前新建的集合都没有这个字段,所以更新不成功。
多谢!
客户端调用云函数会传进event,当中有自己的openid,此时运行的云函数主体有update数据库的操作,更新不成功时符合预期的吗(无论是否本openid均更新不成功)。
而且云数据库的doc.update这种怎么写在云函数中写promise,还望指教。
关键是创建集合时如何带上openid呢?