この記事の背景
Laravelサーバーを起動する時に以下のエラーが出てしまい止まってしまいました。
調べたらなんだそんなものかーって感じでしたね。
解決法
下の参考資料をヒントにしたら解決できました。
UsersController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class UserController extends Controller
{
public function index()
{
return view('welcome');
}
}
usersControllerを作成しました。
web.php
<?php
Route::get('/', 'UsersController@index');
ルーティングでは***'UsersController@index'で設定していたにもかかわらず
usersControllerではUserController***になっていました。UsersControllerに修正しました。
UsersController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class UsersController extends Controller
{
public function index()
{
return view('welcome');
}
}
よくあるミス
参考資料にも書いてあるのですが、Target class ~ does not exist.だと
以下の原因があるみたいです。
1. コントローラのnamespaceが間違っている
2. 複製したコントローラのエクステンドが違う
3. ルーティングのスペルミスかパスが違う
4. コントローラーに記述した use App\Xxxx\xxxxで大文字小文字の違い
下の資料に詳しく書いてあるので参考にしてみてください。
参考資料