由于小程序数据库访问限制问题,如果需要更新数据库记录,必须创建云函数进行操作;
我们创建update_user云函数,云函数内容如下:
const cloud = require('wx-server-sdk')
cloud.init()
const db = cloud.database()
// 云函数入口函数
exports.main = async (event, context) => {
try {
return await db.collection("USER_INFO").doc(event.item).update({
data: {
MOBILE: event.phone,
ADRESS: event.address
}
})
} catch (e) {
console.error(e)
}
}
创建以上云函数后,需要在云函数文件上点右键选择“创建并部署:云端安装依赖”,然后云函数就创建并部署好了。
如更新用户名为“张三”的电话号码,更新成123,住址更新成广东,将用一下方式进行调用:
var db=wx.cloud.database()
db.collection("USER_INFO").where({USER_NAME:'张三'}).get({//先查找张三的记录,目的是获取_id,来定位数据记录
success:res=>{
wx.callFunction({
name:'update_user',//需要调用的云函数的名称
data:{
item:res.data[0]._id,//将查找出来的记录的_id传给云函数,更新这条记录
phone:'123',//更新电话号码
address:'广东'//更新地址
},
success:res_del=>{//删除成功后提示已删除
wx.showToast({
title: '已更新',
icon:'none'
})
}
})
}
})
网友评论