実現したいこと
LaravelでAuthorモデルを使い、一覧表示と新規登録をできるようにしたいです。
発生している問題・分からないこと
Laravelの学習中に、モデル Author を使おうとしたところ、
「クラス App\Models\Author が見つかりません」とエラーが出てしまいます。
モデルファイルは app/Author.php に作成していて、namespace も App\Models; と書いてあります。
コントローラー側では use App\Models\Author; と指定しています。
composer dump-autoload やキャッシュクリアも試しましたが解決できませんでした。
どうすれば Author モデルを正しく読み込めるようになるのでしょうか?
該当のソースコード
app/Author.php
1<?php 2 3namespace App\Models; 4 5use Illuminate\Database\Eloquent\Factories\HasFactory; 6use Illuminate\Database\Eloquent\Model; 7 8class Author extends Model 9{ 10 use HasFactory; 11 12 protected $fillable = ['name','age','nationality']; 13} 14
app/Http/Controllers/AuthorController.php
1<?php 2 3namespace App\Http\Controllers; 4 5use App\Models\Author; 6use Illuminate\Http\Request; 7 8class AuthorController extends Controller 9{ 10 public function index() 11 { 12 $authors = Author::all(); 13 return view('index', ['authors' => $authors]); 14 } 15 16 public function create(Request $request) 17 { 18 Author::create($request->only(['name', 'age', 'nationality'])); 19 return redirect('/'); 20 } 21} 22
routes/web.php
1<?php 2 3use Illuminate\Support\Facades\Route; 4use App\Http\Controllers\AuthorController; 5 6Route::get('/', [AuthorController::class, 'index']); 7Route::post('/author/create', [AuthorController::class, 'create']); 8
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
クラス「App\Models\Author」が見つかりません
補足
特になし

回答1件
あなたの回答
tips
プレビュー