微信小程序云开发--修改云数据库中的数据

小程序代码中无法直接修改他人创建的数据记录

例如:数据库表中的_openid字段是自动生成的,哪个用户创建的记录这个openid就是用户的openid,云数据库的权限分配也是根据openid来进行的。

解决方案:

 第一步:创建云函数,在函数中编写修改数据库的操作代码

// 云函数入口文件
const cloud = require('wx-server-sdk')

cloud.init()

const db = cloud.database()
const _ = db.command

// 云函数入口函数
exports.main = async (event, context) => {
  try {
    return await db.collection('表名').doc('id字段').update({
      // data 传入需要局部更新的数据
      data: {
        isHave: true
      }
    })
  } catch (e) {
    console.error(e)
  }
}

提示:小程序传入云函数的参数在event中,使用方法:event.参数名称。

 第二步:将云函数上传并部署到云

提示:右键创建的云函数--选择“上传并部署”

第三步:小程序调用该函数

wx.cloud.callFunction({
      // 云函数名称
      name: '云函数名称(即创建云函数时的名称)',
      // 传给云函数的参数
      data: {
        a: 1
      },
      success: function (res) {
        console.log(res)
      },
      fail: console.error
    })

 

小程序案例:米琴代购

微信小程序云开发--修改云数据库中的数据_第1张图片  

你可能感兴趣的:(笔记)