質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.42%
Visual Studio Code

Visual Studio Codeとは、Microsoft社が開発したマルチプラットフォーム対応のテキストエディタです。Visual Studioファミリーの一員でもあります。拡張性とカスタマイズ性が高く、テキストエディタでありながら、IDEと遜色ない機能を備えることができます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Q&A

解決済

1回答

761閲覧

Larabel9でエラー「Target class [***Controller] does not exist.」

Tomo0225

総合スコア67

Visual Studio Code

Visual Studio Codeとは、Microsoft社が開発したマルチプラットフォーム対応のテキストエディタです。Visual Studioファミリーの一員でもあります。拡張性とカスタマイズ性が高く、テキストエディタでありながら、IDEと遜色ない機能を備えることができます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

0グッド

0クリップ

投稿2023/03/05 03:14

Larabelでこちらのサイト(https://qiita.com/sano1202/items/6021856b70e4f8d3dc3d )を参考にプロジェクトを作成しましたが、コントローラーとビューを作成して http://localhost:8080/book リストでアクセスしたところ、Target class [BookController] does not exist.のエラーが発生してしまいました。
基本的なルーティングしかしていないはずですがどこが間違っているでしょうか。
http://localhost:8080/ でデフォルトのビューは問題なく表示されます。
開発環境はDockerを使っています。Larabelのバージョンは9.52.4です。
検証のためにTestControllerを追加していますがこちら( http://localhost:8080/test )も同じようにエラーがでます。

src\routes\web.php

1<?php 2 3use Illuminate\Support\Facades\Route; 4use Illuminate\Http\Request; 5use App\Http\Controllers\BookController; 6use App\Http\Controllers\TestController; 7 8Route::get('/', function () { 9 return view('welcome'); 10}); 11 12Route::resource('/book', BookController::class); 13 14Route::get('/test', [TestController::class, 'index']);

src\app\Http\Controllers\BookController.php

1<?php 2 3namespace App\Http\Controllers; 4 5use App\Book; 6 7class BookController extends Controller 8{ 9 public function index() 10 { 11 $books = Book::all(); 12 return view('book/index', compact('books')); 13 } 14 15 public function edit($id) 16 { 17 $book = Book::findOrFail($id); 18 return view('book/edit', compact('book')); 19 } 20 21 public function show($id) 22{ 23 return view('book', ['book' => Book::findOrFail($id)]); 24} 25}

src\app\Http\Controllers\TestController.php

1<?php 2 3namespace App\Http\Controllers; 4 5class TestController extends Controller 6{ 7 public function index() 8 { 9 $msg = 'こんにちは'; 10 return $msg; 11 } 12}

src\app\Providers\RouteServiceProvider.php

1<?php 2 3namespace App\Providers; 4 5use Illuminate\Cache\RateLimiting\Limit; 6use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider; 7use Illuminate\Http\Request; 8use Illuminate\Support\Facades\RateLimiter; 9use Illuminate\Support\Facades\Route; 10 11class RouteServiceProvider extends ServiceProvider 12{ 13 /** 14 * The path to the "home" route for your application. 15 * 16 * Typically, users are redirected here after authentication. 17 * 18 * @var string 19 */ 20 public const HOME = '/home'; 21 22 /** 23 * Define your route model bindings, pattern filters, and other route configuration. 24 * 25 * @return void 26 */ 27 public function boot() 28 { 29 $this->configureRateLimiting(); 30 31 $this->routes(function () { 32 Route::middleware('api') 33 ->prefix('api') 34 ->group(base_path('routes/api.php')); 35 36 Route::middleware('web') 37 ->group(base_path('routes/web.php')); 38 }); 39 } 40 41 /** 42 * Configure the rate limiters for the application. 43 * 44 * @return void 45 */ 46 protected function configureRateLimiting() 47 { 48 RateLimiter::for('api', function (Request $request) { 49 return Limit::perMinute(60)->by($request->user()?->id ?: $request->ip()); 50 }); 51 } 52} 53

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2023/03/05 04:49

バージョンが全然違うので参考にできないと思います。 日本語訳ドキュメントを確認してください。
Tomo0225

2023/03/05 05:00

参考にしたサイトとはバージョンが違うので、現在のバージョンに対応した書き方に修正する対応をすでに行っています。
m.ts10806

2023/03/05 05:04

ん。そのような前提がどこにも書かれてないので何をどのようにしたのか分かりませんが、 それが正しくできるくらいなら質問せずとも解決できそうに思うのですが。
guest

回答1

0

自己解決

下記コマンドでキャッシュを軒並みクリアしたらエラーがなくなり表示できました。
php artisan cache:clear
php artisan config:clear
php artisan route:clear
php artisan view:clear
php artisan event:clear
php artisan clear-compiled

投稿2023/03/05 06:41

Tomo0225

総合スコア67

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.42%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問