关于云函数 数据库不更新的问题?求助。
为什么这个代码执行后,数据库不更新,或者说根本就不执行更新。
// 云函数入口文件
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,
_status: true,
},
success: res => {
console.log('[data:index.js] [修改主数据] 成功')
return res
},
fail: err => {
console.error('[data:index.js] [修改主数据] 失败:', err)
}
})
} catch (e) {
console.error(e)
}
}
//云函数结束
return false
}