关于云函数 数据库不更新的问题?求助。
发布于 6 年前 作者 yongfeng 7843 次浏览 来自 问答

为什么这个代码执行后,数据库不更新,或者说根本就不执行更新。

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

// 初始化 cloud
cloud.init({
  // API 调用都保持和云函数当前所在环境一致
    env: cloud.DYNAMIC_CURRENT_ENV

})

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

// 云函数入口函数
exports.main = async (event, context) => {
  // 获取 WX Context (微信调用上下文),包括 OPENID、APPID、及 UNIONID(需满足 UNIONID 获取条件)等信息
  console.log(event) //不带_的是老数据
  console.log(context)
  //云函数开始

  //   _kind: event._kind,
  //   _medical: event._medical,
  //   _postcode: event._postcode,
  //   _info: event._info,
  //   _address: event._address,
  //   _medicare: event._medicare,
  //   _honor: event._honor,
  //   _device: event._device,
  //   _grade: event._grade,
  //   _modeprompt: event._modeprompt,
  //   _mode: event._mode,
  //   _phone: event._phone,
  //   _alias: event._alias,
  //   _url: event._url,
  //   _province: event._province,
  //   _area: event._area,
  //   _city: event._city,
  //   _bus: event._bus,
  //   _time: event._time,
  //   _status: true,
  console.log('[data:index.js] [修改主数据] 表名:', event.data)
  console.log('[data:index.js] [修改主数据] 原_name:', event.name)
  //开始申请 旧的申请
  exports.main = async (event, context) => {
    // 获取 WX Context (微信调用上下文),包括 OPENID、APPID、及 UNIONID(需满足 UNIONID 获取条件)等信息
    const wxContext = cloud.getWXContext()
    //因为从新表添加到老表,ID不一样 必须用name 且name是唯一值
    try {
      return await db.collection(event.data).while({
        _name: event.name
      }).update({
        data: {
          _kind: event._kind,
          _medical: event._medical,
          _postcode: event._postcode,
          _info: event._info,
          _address: event._address,
          _medicare: event._medicare,
          _honor: event._honor,
          _device: event._device,
          _grade: event._grade,
          _modeprompt: event._modeprompt,
          _mode: event._mode,
          _phone: event._phone,
          _alias: event._alias,
          _url: event._url,
          _province: event._province,
          _area: event._area,
          _city: event._city,
          _bus: event._bus,
          _time: event._time,
          _statustrue,
        },
        successres => {
          console.log('[data:index.js] [修改主数据] 成功')
          return res
        },
        failerr => {
          console.error('[data:index.js] [修改主数据] 失败:', err)
        }
      })
    } catch (e) {
      console.error(e)
    }
  }

  //云函数结束
  return false
}
1 回复

env在我这里设置的绝对环境id、

回到顶部