數據庫的增刪改查
增
注意 data內值格式應為: name:this.data.name,
使用setdata只是為了對前端做一遍更新
const db=wx.cloud.database()
const _=db.commond
var that=this
db.collection("bank").add({
data: {
databaseValueName:VarInYourProgram,
},
success:function(res){
wx.showToast({
title:"添加成功",
duration:2000
})
that.setData({
databaseValueName:VarInYourProgram,
})
},
fail:function(res){
wx.showToast({
title:"添加失敗",
duration:2000
})
}
})
刪
goodId是數據庫待刪除記錄的_id值
const db=wx.cloud.database()
const _=db.commond
var that=this
db.collection("bank").doc(goodId).remove({
success:function(res){
wx.showToast({
title:"刪除成功",
duration:2000
})
},
fail:function(res){
wx.showToast({
title:"刪除失敗",
duration:2000
})
}
})
如果前端使用<form wx:for("{{datas}}")>,可以使用前端返回的index來查找_id值
例如:
前端:(goods為data保存的數據庫的值,goodName是一個屬性)
<form bindsubmit="action" wx:for="{{goods}}" wx:for-index="index" wx:for-item="item" wx:key="{{item.goodName}}">
<input hidden='true' name='index' value={{index}}>
<button form-type='submit'> submit</button>
</form>
后端:
這樣就獲得了_id
action:function(e){
var index=e.detail.value["index"]
var id=this.data.goods[index]._id
}
查
如果需要將查找到的數據添加到data中,請先var that=this之后使用that.setdata({})
const db=wx.cloud.database()
const _=db.commond
//詳情見雲開發手冊command eq,lt,gt,in,and等
//此處查詢theAttrYouSearch中等於aaa的記錄
db.collection("bank").where({
theAttrYouSearch : _.eq("aaa")
}).get({
//若成功獲取,異步操作注意異常
success: res=>{
//打印記錄中第一條里goodName屬性
console.log(res.data[0].goodName)
}
})
改
const db=wx.cloud.database()
const _=db.commond
//獲取goodId的方法同刪除操作
db.collection("bank").doc(goodId).update({
//只修改goodNum屬性
data: {
goodNum: num
},
success:res=>{
},
fail: res=>{
}
)}