Laravel报错Class 'App\Task' not found 新手求助
解决Laravel中Class 'App\Task' not found的问题
嘿,我一眼就瞅出问题所在啦——你的模型类名和路由里引用的类名不匹配!
问题根源
你在路由里调用的是 App\Task::all(),但你的模型文件里定义的类是 Tasks(注意末尾多了个s),Laravel找不到对应类自然就报错了。
两种解决方法,选一种就行:
方法一:修改模型类名(推荐,符合Laravel命名规范)
Laravel的模型命名默认是单数形式,对应数据库表是复数(比如Task模型对应tasks表),所以把你的Task.php里的类名改成单数:
<?php namespace App; use Illuminate\Database\Eloquent\Model; class Task extends Model { // 这里保持原样就行 }
改完之后,路由里的App\Task::all()就可以正常工作了。另外建议把模型文件名也改成Task.php,保持类名和文件名一致,更符合规范。
方法二:修改路由里的模型引用
如果你不想改模型类名,那就在路由里用正确的类名App\Tasks:
Route::get('/task',function(){ $task = App\Tasks::all(); return view('task',['task' => $task]); });
内容的提问来源于stack exchange,提问作者Wei Kang
相关产品推荐
相关产品推荐

