微信小程式雲開發--修改雲資料庫中的資料
阿新 • • 發佈:2018-12-07
小程式程式碼中無法直接修改他人建立的資料記錄
例如:資料庫表中的_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 })