亲宝软件园·资讯

展开

AppBoxFuture实战: 如何同步开发与生产环境的模型

白菜园 人气:0
  框架是用抽象模型驱动的方式来生成应用系统的,这样可以将这些模型序列化为相应的模型包文件,通过反序列化导入至其他部署环境内,从而实现开发环境与生产环境的同步,包括对应的数据库结构的同步。下面通过示例来演示如何操作: # 一、准备测试应用 * 通过New->Application创建一个新应用,名称如:erp; * 选择新建的应用的Entities目录,通过New->Entity新建一个实体模型并映射至Default存储内,随便添加些属性; * 选择新建的应用的Services目录,通过New->Service新建一个服务模型,随便实现一个服务方法; * 选择新建的应用的Views目录,通过New->View新建一个视图模型; * 通过Models->Publish发布当前应用。 # 二、导出应用模型包   通过AppStore->Export Application选择相应的应用导出,参考以下动图: ![](https://img2020.cnblogs.com/blog/4928/202003/4928-20200312130940282-1567722359.gif) # 三、导入应用模型包   导入应用模型包时框架会判断当前是否存在相同的应用,如果存在则会进行新旧模型的比对,进行相应的添加、删除、更新模型的操作,如果不存在则简单导入整个应用。在这里我们先尝试导入整个应用,所以先通过选择刚刚创建的应用,点击Models->Delete删除掉,然后再通过AppStore->Import Application重新导入,参考以下动图: ![](https://img2020.cnblogs.com/blog/4928/202003/4928-20200312130953907-1419929369.gif) > 注意:如果模型包使用了非默认数据库,导入前需要先创建相同名称相同类型的存储模型。 # 四、更新应用模型包   以上步骤导入了一个新的应用,下面步骤尝试更新应用: * 修改模型:比如实体模型添加一个属性或添加一个索引,服务模型修改一下逻辑; * 重新发布并导出为新的应用模型包; * 删除当前应用,导入旧的应用模型包(步骤二导出),查看一下模型定义; * 再重新导入新的应用包(本步骤导出),再查看一下模型是否更新了,另外可看一下数据库的数据表结构是否同步更新了。 # 五、本篇小结   模型包的导入导出功能一方面可以方便同步开发与生产环境,另一方面作者将来想建设一个应用及外包市场,这样大家就可以在市场上下载模型包直接导入修改。GitHub/enjoycode上用于测试的Windows的部署包[appbox.deploy.win]也由GitHub Action自动更新,Linux请自行编译测试。另一边码代码一边码文实属不易,作者需要您的支持请您多多点赞推荐!

加载全部内容

相关教程
猜你喜欢
用户评论