こんにちは、ゆきねこです。

最近、仕事とは別に開発を進めているのですが、その際にLaravel8を使ってみたら今までと違うところがあって詰まったので、問題と対策について書きます。

今回普通にルーティング書いたら以下のようなエラーが出たんですね。

Illuminate\Contracts\Container\BindingResolutionException

Target class [UserController] does not exist.

ルーティングは今まで通りこんな感じです。

Route::get('/users', 'Api\UserController@index');

調べてみたら、ルーティングの書き方が変わって以下のようになったみたいです。

use App\Http\Controllers\Api\UserController;
Route::get('/users',  [UserController::class, 'index']);

今までと違うのは、useでコントローラーをインポートしているのと、第二引数が配列になった点ですね。

今までインポートがいらなかったので、そこで結構引っかかっちゃいました。

他にも触ってみて今まで通りいかないところが結構ありそうです。

カテゴリー: PHP

0件のコメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です