2018年5月6日 星期日

Larvel4.2 升級到5.0 5.2一些備註

larvel 升級的說明:


(一) 4.2升級到5.0

https://laravel.tw/docs/5.0/upgrade

大升級有幾個操作上文件沒有說到的部份要注意:

1.執行composer update時候出錯,

需要將vendor/compiled.php 移除,在重新執行composer update

2.注意控制器的命名空間問題

將所有的控制器移到 app/Http/Controllers 目錄下。既然在本指南中我們不打算整合到完整的命名空間,請將 app/Http/Controllers 添加到 composer.json 的 classmap,接下來,您可以從 app/Http/Controllers/Controller.php 基底抽象類別中移除命名空間,並確認整合過來的控制器是繼承這個基底類別。
在 app/Providers/RouteServiceProvider.php 檔案中,將 namespace 屬性設定為 null

3.注意CSRF問題

預設情況下,所有路由都會使用 CSRF 保護。若想關閉它們,或是只在特定路由開啟,請移除 App\Http\Kernel 中 middleware 陣列內的這一行:
'App\Http\Middleware\VerifyCsrfToken',

4.移除Form 跟 Html功能 要使用需要以下調整:

(1)在composer.json  裡面

 require 追加
        "laravelcollective/html": "~5.0"

使用composer update 更新

(2) config/app.php檔案裡面調整

 'providers' 追加     
        'Collective\Html\HtmlServiceProvider',

'aliases' 追加
        'Form' => 'Collective\Html\FormFacade',
        'Html' => 'Collective\Html\HtmlFacade',


(二) 4.2升級到5.2

https://laravel.tw/docs/5.0/upgrade

1.注意Input功能消失,要使用需要在 config/app.php檔案裡面調整:


 This commit removed Input facade definition from config/app.phphence you have to manually add that in to aliases array as below,
'Input' => Illuminate\Support\Facades\Input::class,
Or You can import Input facade directly as required,
use Illuminate\Support\Facades\Input;














沒有留言:

張貼留言