我的第一个微信小程序~秋名山户外
使用云开发 quickstart 这是云开发的快速启动指引,其中演示了如何上手使用云开发的三大基础能力:
- 数据库:一个既可在小程序前端操作,也能在云函数中读写的 JSON 文档型数据库
- 文件存储:在小程序前端直接上传/下载云端文件,在云开发控制台可视化管理
- 云函数:在云端运行的代码,微信私有协议天然鉴权,开发者只需编写业务逻辑代码
- 参考文档云开发文档
秋名山户外小程序,主要是一个户外活动报名小程序,原型设计如下:
数据库设计如下:
用户信息表 | userdb | ||
字段名称 | 字段类型 | 字段 | 是否可为null |
数据库记录id | string | _id | 否 |
用户唯一标识 | string | db_openid | 否 |
用户名 | string | db_nickname | 否 |
性别 | Number | db_gender | 否 |
用户头像 | string | db_avatarUrl | 否 |
参加活动ID | Array | db_activityJoin | 否 |
收藏的活动 | Array | db_activityFavo | 否 |
用户报名表 | usersignupdb | |||
字段名称 | 字段类型 | 字段 | 是否可为null | |
数据库记录id | string | _id | 否 | |
活动唯一标识 | Number | db_avtivityid | 否 | 主键 |
用户唯一标识 | string | 否 | ||
用户头像 | string | db_avatarUrl | 否 |
活动信息表 | activitydb | |||||
参考设计 | https://github.com/dmego/together | |||||
活动信息表 | activitydb | |||||
字段名称 | 字段类型 | 字段 | ||||
数据库记录id | string | _id | 是否可为null | 备注 | ||
活动唯一标识 | Number | db_avtivityid | 否 | |||
活动发起人 | userdb | db_publisher | 否 | |||
活动发起人手机号 | Number | db_phonenumber | ||||
活动主题 | String | db_title | 否 | |||
活动内容 | String | db_content | 否 | |||
活动照片 | String | db_picpath | 否 | |||
活动类型 | Number | db_type | 否 | { 1:户外,2:游戏,3:交友, 4:旅行,5:读书,6:竞赛, 7:电影,8: 音乐,9: 运动 } |
||
活动公开 | Number | db_public | 否 | { 0:不公开,1公开 } |
||
活动开始时间 | String | db_starttime | 否 | 年月日十分 | ||
活动结束时间 | String | db_endttime | 否 | 年月日十分 | ||
报名截止日期 | String | db_deadline | 是 | 年月日十分 | ||
活动地点 | String | db_address | ||||
活动纬度 | Number | db_latitude | ||||
活动经度 | Number | db_longitude | ||||
活动最多人数 | Number | db_planmaxpeople | ||||
活动实际人数 | Number | db_actpeople | ||||
实际参加人 | Array | db_actpeopleopenid | openid的数组,后来想了下,这边可以加上对应的头像URL,这样子我就不用再去用户信息表查询玩家信息了。 最后我们不使用这个字段,而是多了一张活动报名信息表 | |||
活动状态 | Number | db_status | { 1:准备中,2:进行中,3:已结束 } |
|||
活动群聊二维码 | String | db_chatpicpath |
小程序项目工程已经共享到Github:https://github.com/gocpplua/miniplaytogether
大家可以扫码体验下: