文章目录

公司里启动了很多以前搁置的老项目,包括一个简单好用的账本系统,我记流水账也一直在用。他们在开发新版本的时候,我突然想原来的老版本能不能也方便的放到小程序上用呢?

老版本的服务端是基于fastadmin开发的,于是我查看了一下,真的有一个叫fastadmin助手小程序的插件,可以在服务端方便的生成crud接口,同时提供小程序段代码。

二话不说,入手。

然后……

尴尬了,原来fastadmin的版本是2018,但是助手小程序要求202008以后的版本才可以。

升级过程也不算顺利,记录一下吧:

#同步项目代码

1、首先下载最新版fastadmin完整包,本地安装。

2、备份原项目。

3、使用BeyondCompare比对,逐一更新项目文件。这里需要注意一下,由于大部分目录都没修改过,其实可以直接覆盖就好了。但是application目录下肯定有不少新增文件,还包括config和database,一定要仔细比对,逐行添加和修改。

#更新项目依赖

1、删除public/assets/libs目录所有内容。

2、保证bower和composer的配置文件都是最新的。

3、使用bower install安装前端依赖。

4、使用composer update安装php依赖。注意,在安装过程中,有可能出现 putenv() has been disabled for security reasons 或者 shell_exe() has been disabled for security reasons 之类的错误,原因只是对应的php版本禁用了这个函数,允许使用就好了。

#同步数据库

1、使用navicat连接原项目和新安装fastadmin的数据库。

2、选中新数据库,选择菜单工具->结构同步。这里首先只同步所有存在的数据表结构,忽略掉新增的。

3、选择菜单工具->数据传输。将新增的表添加到原项目中。

#同步应用环境

1、直接启动ngnix,访问项目看有没有问题,没有问题就可以跳过了。

2、然而我写这一步,当然是因为我的出问题了😢 进入站点提示:Parse error: syntax error, unexpected ':', expecting '{' in E:\wamp64\www\yii\vendor\symfony\polyfill-php80\bootstrap.php。很容易的搜到了原因,新的依赖包polyfill中没有支持 php5.6,所以把项目使用的php环境改为了7.2,一切恢复正常。

♦ 本文固定连接:http://gsgundam.com/2020-11-20-fastadmin-update-2018-to-2020/

♦ 转载请注明:GSGundam 2020年11月20日发布于 GSGUNDAM砍柴工