小韦云链二次开发手册

免打包在线升级

小韦云科技-区块链+小程序+公众号+商城+分销+直播+企业官网+外贸电商-为您提供优质的开发服务-电话/微信联系:18123611282

如果你要开发一款PHP开源系统,如thinkphp或wordpress那样提供给大家下载使用,那么就会涉及到一个版本更新的问题。像wordpress 可以直接在后台一键更新,用户体验比较好,但对于提供升级包的开发者就不那么容易,他需要打包好要更新的文件,同时也需要准备好升级数据库需要的SQL语句,还要把打包好的升级包放到服务器上提供给大家,一系列操作下来也是非常耗时间的,如果更新比较频繁那就更耗时间。

我们在使用git时很容易做到代码文件的升级更新操作,仅需要git pull一下就好,但如果涉及到数据库的更新,那就比较麻烦,幸好我们有了phinx( https://book.cakephp.org/phinx ),以下是它的介绍:

好的开发者总是会用版本控制系统管理他们的代码,那为什么不同样对数据库进行版本控制呢?
Phinx 可以让开发者简洁的修改和维护数据库。 它避免了人为的手写 SQL 语句,它使用强大的 PHP API 去管理数据库迁移。开发者可以使用版本控制管理他们的数据库迁移。 Phinx 可以方便的进行不同数据库之间数据迁移。还可以追踪到哪些迁移脚本被执行,开发者可以不再担心数据库的状态从而更加关注如何编写出更好的系统。

有了phinx,我们就可以使用git对数据库进行版本管理

由于小韦云系统是在后台使用数据模型对数据库进行管理,如创建表,修改字段等,因此小韦云能直接智能生成phinx迁移文件,不需要开发者手写迁移文件,非常方便。比如开发者在数据模型里创建一个名为test的数据模型并增加相应的字段,这时系统会自动在开发者的数据库创建一个名为wp_test(wp_是表前缀)的真实的数据表,同时也会在根目录db/migreates目录下自动创建创建这个表和字段所需要的全部迁移文件,开发者只需要提交代码,别人就可以同步一样的代码和数据库。

在这个过程开发者不需要特意打包代码,也不需要人为写升级SQL语句,简直是简单得不能再简单了,非常快捷省心;其它开发者也不关心数据库的更新的先后顺序,仅需要更新代码和执行更新数据库就行。

除了对开发者友好,对系统管理员也比较好友,小韦云在后台像wordpress那样提供升级提示和一键升级功能,不需要技术就能完成系统升级。

本文由小韦云原创,转载请注明出处:https://www.bctos.cn/doc/11/1916,否则追究其法律责任

关键词:git phinx 升级

广告位招商