Laravel 6.xから9.xへアップグレード [エラー解決/移行ガイド]
今回は新規にプロジェクト(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