继上一次程序员哥哥简单开发了一个照片储存小程序后, 感觉还是有些小小缺陷, 就是没办法对上传照片进行文字描述. 因为主要都是文字, 如果将文字描述再保存为文件存放到储存空间这明显不太适合也费周章. 那好吧, 我们今天就一起对云开发中自带的数据库进行研究; 应该可以解决我们这个小小的缺陷.
云开发中自带的数据库跟平时接触的关系型数据库有些区别, 云开发所提供的数据库是一种 JSON 数据库, 它的每条记录都是一个 JSON 格式的对象. 一个数据库可以有多个集合(相当于关系型数据中的数据表), 集合可看做一个 JSON 数组, 数组中的每个对象就是一条记录, 记录的格式都是 JSON 对象. 简单点说就是, 每条记录都是一条 JSON, 不用去考虑什么建表建字段.
是不是很神奇呢~ 广告打得再好, 也需要看功能. 我们下面就一步步在我们上次建立的照片储存小程序上进扩展建设.
点击云开发, 在云开发控制台上面点击 "数据库" 再点击 "添加集合"
建立集合
这里的添加集合就相当于我们的建库(总得找个地方进行数据存放), 就这样我们完成了云数据库的建立. 接下来我们只要通过小程序把数据添加到这个集合里就可以.
因为要对数据库中的集合进行数据写入, 那我们的思路就是照片上传成功后再填入日志然后保存到集合中. 所以我们要新建一个页面用来写入日志和进行保存.
在新建页面前, 我们要对之前上传的页面进行改造, 就是上传成功后加多一个带文件 ID 的页面跳转 (wx.navigateTo) 到我们新建的记录页面, 如下图.
带参数跳转
在这里我新建了一个简单的记录页面, 主要是一个显示传入后的图片和文字输入框及一个提交按钮, 其中 fileid 为传入的文件 ID.wxml 代码如下:
前端页面
关键点: 因为我们要接收上传成功后返回的文件 ID 值, 所以我们必须要在 onload 加入一个接收的功能. 如下图:
传入参数
接下来我们看看怎么对云数据库进行操作, 首先第一步肯定是要连接上我们的云数据库可以通过 const db = wx.cloud.database() 来连接, 然后就往对应的数据集合写入数据 db.collection('数据集合称').add(). 代码如下:
代码片段
万事俱备, 进行调试. 当我们可以在云开发控制器中的数据库中看到我们所写入的 JSON 记录, 这样数据就被成功写入到云数据库了.
写入数据成功
-END-
注: 该文已首发于 [微信公开课 +] 中的[小程序社区]
更多技术文章可以扫描以下方二维码加入微信公开课 +
来源: https://www.qcloud.com/developer/article/1356224