1、小程序中初始化云开发环境
在小程序的app.js中 onLaunch 生命周期的钩子函数中初始化云开发环境。
// app.js
App({
onLaunch() {
// 小程序启动时,自动初始化云开发环境
wx.cloud.init({
env: 'cloud1-8gpel2sx0effc860' // 这里就是我们刚刚保存的云开发的环境id ps建议复制黏贴
})
},
globalData: {
}
})
// ps 有时候初始化 如果报错 不要紧张,重启一下开发者工具即可
2、云数据库操作
(1)、新建集合
(2)、集合的权限管理
修改数据库权限,不然用户查询不到
(3)、插入数据以及批量插入
①、手动插入
②、导入文件的方式
手动插入太麻烦,我们可以选择导出文件(可以导出excel以及json格式),根据导出的文件格式,添加数据。然后导入。
注意:需要去除导出文件中的 _id 字段,否则插入不成功
当前案例以json格式举例:
接下来耐心等待即可
查看导出json 按照这个格式 新增新的数据 注意去除_id属性,否则导入失败。
批量写好后点击导入选择编辑好的 json文件即可批量导入
3、数据库的增删改查
(1)、查询:get方法
方法1: 回调函数形式
const db = wx.cloud.database(); // 初始化获取数据库引用,建立数据库的连接
// 选择items集合 并调用get方法查询数据
db.collection('movies').get({
success: (res)=>{
console.log(res.data, '请求成功了数据在res.data中');
},
fail: (err)=>{
console.log(err,'请求失败了');
}
})
方法2: promise 返回结果(推荐使用)
建议使用promise
const db = wx.cloud.database();
db.collection('movies').get().then(res=>{
console.log(res.data, '请求成功结果在res.data中');
}).catch(err=>{
console.log(err,'请求失败');
})
(2)、新增:add方法
const db = wx.cloud.database();
db.collection("movies")
.add({
data:{
id:"01004",
name:"中国医生",
master:"肖战"
}
})
.then(res=>{
wx.showToast({
title: '添加成功',
})
}).catch(err=>{
wx.showToast({
title: '添加失败',
})
})
(3)、删除:remove方法
const db = wx.cloud.database();
db.collection("movies")
.where({
name:"中国医生"
})
.remove()
.then(res=>{
wx.showToast({
title: '删除成功',
})
this.allMovies();//重新查询所有数据
}).catch(err=>{
wx.showToast({
title: '删除失败',
})
})
}
(4)、更新:update方法
需要注意的是,需要开通数据库权限,设置用户可以读写,否则无法修改、增加和删除数据。
const db = wx.cloud.database();
db.collection('movies')
where({
name:"十面埋伏"
})
.update({
data: {
name: "八面埋伏"
}
}).then(res=>{
wx.showToast({
title: '修改成功',
})
this.allMovies();
}).catch(err=>{
console.log(err);
wx.showToast({
title: '修改失败',
})
})
(5)、排序:orderBy
1. 根据哪个字段排序;
2. 排序规则(升序或者降序)。升序用asc,降序用desc。
const db = wx.cloud.database();
db.collection('movies')
.orderBy('id', 'asc') // 按照id升序 .orderBy('id', 'desc') //按照id的降序
.get().then(res=>{
console.log(res, '请求成功结果在res.data中');
this.setData({
movies: res.data
})
}).catch(err=>{
console.log(err,'请求失败');
})
}