最近微搭的新能力频频更新,新的能力提供之后需要下一番功夫研究一下,才能具体拓展到项目中。本文就解析一下数据源新提供的字段关系类型主子关系的能力。
项目背景
最近参加了一个管理书籍的读书营,读书营的老板也是一个善于运用互联网工具来进行营销的高手,目前读书营是通过趣练习Pro小程序进行工作的。因为读书营有个自我推荐的活动,我在自我推荐时介绍了低代码的技术,介绍的过程中老板也问了什么是低代码,低代码能干什么的问题。
我想了一下说,比如你现在用的趣练习小程序就可以用低代码实现,活动中老板就说那咱俩不合作一下,我也正好体验一下你说的这个新技术。
第二天老板就联系了我,效率真够高,怪不得人家能当老板,我还在老老实实的打工了,可能就差在执行力这一块。
当然了作为一个勇于探索的职场人,老板有需求那自然不在话下,有需求就开始做。
需求分析
因为我是作为学员全程参与了读书营的打卡活动,他每一期的读书营一共是分成9周,每一周都有对应的作业,全部完成9次打卡就算顺利通关,会平分押金并且得到毕业的电子版证书。当然了大部分人都是三分钟热度,能坚持打卡完成作业的可谓寥寥无几吧,其实成功的路上不是别人打败了你,懒惰和不坚持足以淘汰大部分人。
数据源设计
相对来说作为一个线上打卡小程序,数据源设计可能就不像以前那么简单了,我总体上规划了一下,基本上分为活动表用来记录每一期的活动信息;任务表,每一期的活动分为9次的打卡任务;打卡记录表,记录打卡学员的一个学习情况;学员表,学员需要报名参加读书营的活动;学员活动表,学员报名成功记录报名信息,一个学员可以重复参加各期活动,每期活动有多位学员报名;管理员表,读书营的运营人员可以审批报名的学员,可以对学员打卡进行点评。
有了规划其实在数据库这一块就需要拆分表并且建立表之间的关系
那在微搭中是如何维护数据库中一对多、多对多的关系呢?具体就需要使用到新的能力主子明细了,活动表和任务表是一对多的关系,一个活动有多个任务,活动表是主表,任务表是子表,所以需要在任务表里增加一个字段,引用到活动表
页面上的变化
那数据源这样设计了之后,对应到界面上是什么样子呢?这个时候就需要用到应用管理里的模型应用,模型应用会自动识别到你的数据源,在自动创建界面时也考虑到了表和表之间的关系
在自动生成的时候这种主子关系的界面上会生成一个弹出页面组件
发布之后,点击这个组件的时候会弹出主表的表格,这样子表中的数据就和主表建立了关联
勾选之后会把主表的主键带回来
多对多的关系
学员和活动表之间就是多对多的关系,我们一般在数据库设计的时候会拆分成两个一对多的关系,也就是建立中间表学员活动表,这样存储学员的id和活动的id就可以了
总结
我们这一节介绍了如何在数据源中实现一对多、多对多的关系,了解了微搭新增的主子关系的能力,当然了要想做出一个好用的应用还是需要不断尝试,在犯错中不断的纠正,水平就逐步提高了。