ホーム > カテゴリ > PHP・Laravel・CakePHP >

Laravel 6.xから9.xへアップグレード [エラー解決/移行ガイド]

CentOSで各種サーバー構築(目次)

今回は新規にプロジェクト(Laravel9系)を作成して、そこに元のソースファイルを徐々に移動していきます。公式の移行ツールはありませんので手動で作業を行います。

前提条件

PHP8.1以降

関連記事:PHP8.xへアップグレードする [CentOS/Ubuntu]

1. プロジェクトの作成

composer create-project --prefer-dist laravel/laravel sample-project  "9.*"

移行作業中はデバックモードをオンにするとエラー箇所がわかりやすい。

2. config/app.php

// ロケール/タイムゾーンの設定
'timezone' => 'Asia/Tokyo',
'locale' => 'ja',

3. .env

ログのレベルを「LOG_LEVEL=debug」から「LOG_LEVEL=warning」にする。その他にアプリ名、データベース、セッションなど任意。

4. routes/web.php

以前と同じように記述する場合はフルパスを指定する。

(6系)Route::get('/', 'HomeController@index');
(9系)Route::get('/', 'App\Http\Controllers\HomeController@index');

5. モデル

・モデルはapp\Modelsへ移動する
・「namespace App;」を「namespace App\Models;」に変更する

6. コントローラー

・モデルと同様に「use App\モデル名;」を「use App\Models\モデル名;」

7. ビュー

ビューのファイルが正常に動作しない時はスペース等でも入れて上書き保存すると反映される。コピペだけだと反映されない場合がある。

8. ミドルウェア

以前と同じように設定可能です。

9. 言語ファイル

・resources\lang\jaからlang\jaへ

10. ページネーション

ページネーションはデフォルトでTailwind CSSになります。Bootstrapを使用する場合は次のようにします。

[app/Providers/AppServiceProvider.php]

// 追加
use Illuminate\Pagination\Paginator;

public function boot()
{
    // Bootstrap4系を使用する
    Paginator::useBootstrap();
    
    // Bootstrap5系を使用する
    //Paginator::useBootstrapFive();
}

以上となります。





関連記事



公開日:2022年04月13日 最終更新日:2022年04月14日
記事NO:02909