by Devin Yang

建立于: 6年前 ( 更新: 6年前 )

我的后台一开始是自己打造的框架,一样采用MVC架构,自己做的数据库连线及环境设置档等,
包含自己的样版语法,直到我想让自己的框架要去支持Restful时,有个想法,
别人都写好了我何必自己去重写同样的功能,写出来会比较好吗?
所以开始改用框架,一开始采用Slim,主要因为他对於php的支持版本较低,
因为自己创建的class本身都有使用namespace,所以移植到Slim上没什么问题,
但尝试了Slim的twig templates后,觉的没有Laravel的blade template好用,
虽然当时我采用Slim的框架,不过我在Slim上选择使用了Laravel的blade的样版引擎:p,
那时我装了philo/laravel-blade,写了一阵子的slim觉的还是较喜爱Laravel的多样的功能,
所以再进行一次Slim转Laravel任务,这个过程极顺利,不用再去修改已写好的样版了,
大概就是建Controller及路由,做一些拷贝粘贴的任务,不到一天半,
就把我的slime框架再转换到Laravel 5.3上了。

这次又想升级后台的Larave,主因是因为我太喜欢5.5上面新的路由功能了(在Laravel 5.5,好用的基本路由),
这对於我进行前台套版时,会方便很多,再说后台升级也不是第一次干这种事了,对我来说没什么难度。
Laravel 5.3时我已做过一次升级Laravel 5.4,有点经验,
所以今天再次进行升级,一样30分钟内轻松搞定,所以来谈谈我的方式。

当然还是建议去瞄一下Laravel官网的升级指引:
https://laravel.com/docs/5.5/upgrade

以下是个人经验分享,仅供参考:

由於我的后台的进程码及使用的Class本来就是自己独立的Source Code了,所以升级起来超简单,
觉的有点像是在新版的Laravel上装了一个包的feel。

以下是我的升级流程:
一、直接建一个新的Laravel 5.5的Project,初始化git版本控制,我想了解旧版贴到新版差异。
(这里直接初始化一个新的Project是我不需要5.4之前git修改日志,顺便瘦身一下。)
二、修改compose.json,补上我后台使用的ow_source到app的数据夹,ow_source是我还未使用框架时残存下来的一些Class,及一些后台需要用到的函式库(laravel-debugbar&guzzle)。
composer.json
三、粘贴我改过的.env档,到Laravel 5.5的Project内。
四、我有独立views叫ow的数据夹内含后台的layouts、forms、lists、views、partial全部拷贝到新的laravel下的resource/views内。
五、几个相关文件调整,app/Http/Kernel、自己一些独立的Middleware、config/app.php及config/database.php及config/filesystems.php。
六、数据库相关的文件migration档及seeds,我后台的基本数据表(两个文件)。
七、拷贝自己的package.json,resource/asset/内的js及css至新版本的Laravel,并进行安装npm install。

不到半小时,就搞定了。然后测试,新建修删,备份及还原,DebugBar、OAuth登录功能。
badkend

干净安装,进行备份数据还原php artisan migrate:refresh及php artisan db:seed都没问题:D。
这次更新,在进行OAuth验证的地方,我有多补了一个login的名称,因为登录时出错,说找不到login这个名称。
Route::get('/我的登录/auth','OAuthCallbackController@sso')->name('login');
restore

Tags: laravel

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


laravel

我如何强制Laravel使用HTTPS网址

我碰到的问题大概是这样,容器环境跑Laravel,容器内没有HTTPS造成Laravel用没有https的方式传送表单。在AppServiceProvider的boot补上如下语法\URL::forceScheme('https');

dlaravel

使用D-Laravel build自己专用的php fpm image。

D-Laravel已提供了Build好的php image,如果需要自己调整及Build自己专用的Image相当简单。 一、首先在D-Laravel的录中,进入dockerfiles/fpm,选择您要Build的PHP版本,例如7.2。 命令如下...

laravel

Laravel思绪整理,从Model到DatabaseSeeder.

本文将一步一步介绍相关的命令用例: Model=>Factory=>Seeder=>DatabaseSeeder 一步一脚印,让我们就从Model开始检视所有流程到DatabaseSeeder。