見出し画像

Cloud9に入れたLaravel9の初期設定をする

前回はDB設定をしたので、初期設定をしていこうと思います。
前回はこちら。

configファイルの変更

laravelをインストールしたディレクトリ/config/app.phpを表示してください。
下記の2箇所を変更。

// タイムゾーンを東京に
'timezone' => 'UTC', → 'timezone' => 'Asia/Tokyo',

// 言語設定を日本に
'locale' => 'en', → 'locale' => 'ja',

日本仕様に変更します。
日本以外のサイトを作るにはこちらを適宜変更してください。

RouteServiceProvider.phpファイルの変更

laravelをインストールしたディレクトリ/app/Providers/RouteServiceProvider.phpを表示。
下記を参考にして、コードを追加してください。

class RouteServiceProvider extends ServiceProvider
{
    protected $namespace = 'App\Http\Controllers';  // 追加
    ~~~~ ここは割愛 ~~~~
    public function boot()
    {
        $this->configureRateLimiting();

        $this->routes(function () {
            Route::middleware('api')
                ->prefix('api')
                ->namespace($this->namespace)   // 追加
                ->group(base_path('routes/api.php'));

            Route::middleware('web')
                ->namespace($this->namespace)   // 追加
                ->group(base_path('routes/web.php'));
        });
    }
    ~~~~ ここは割愛 ~~~~
}

何をしているかというと、Laravel8以降はルーティングの設定が変わって、上記の設定をしないとこちらのエラーが出ます。

Target class [XxxxController] does not exist

これがLaravel7までの書き方と同じでいけるので馴染みが深いのではないでしょうか。

もしくはroute設定のweb.phpでuseしてあげるのも良さそうです。

use App\Http\Controllers\XxxxController;

~~~~ ここは割愛 ~~~~
Route::get(‘xxxxx’, [XxxxxController::class, ‘index’]);

ここは好きずきかなと思うので、好きな方で対応してください。
公式に載っているのは、useを使っている方です。

これで開発できるようになったので、がんがん開発していきましょう。


この記事が気に入ったらサポートをしてみませんか?