laravel - 在 laravel 8 中找不到控制器的媒体模型
问题描述
我测试过使用 laravel,但我遇到了一些意外错误,我已经按照教程和一些视频进行了操作。我想,我做对了。但我得到这个错误。问题控制器未找到媒体模型。
找不到类“App\Media”
路线
Route::get('/', [MediaController::class, 'index']);
媒体控制器
namespace App\Http\Controllers;
use App\Media;
class MediaController extends Controller
{
public function index(){
return Media::all;
}
}
媒体模型
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Media extends Model
{
protected $table = 'media';
public $timestamps = false;
protected $primaryKey = 'Media_ID';
}
解决方案
您use
对模型的陈述Media
不正确。从 Laravel 8 开始,模型的默认命名空间是App\Models
之前它们在App
命名空间中的位置。
namespace App\Http\Controllers;
use App\Models\Media;
class MediaController extends Controller
{
public function index(){
return Media::all;
}
}
确保该Media.php
文件存在于您的app/Models
目录中并且大小写正确。
然后在您的web.php
文件中,不要忘记MediaController
在顶部包含您的使用声明。
use App\Http\Controllers\MediaController;
推荐阅读
- haxe - haxe 获取函数类型参数的字段的类型信息
- ray - rllib 中的光线还原检查点
- oracle - 浏览多个字段的值并将它们插入同一列
- html - HTML/TS 双搜索过滤器
- angular - ExpressionChangedAfterItHasBeenCheckedError 来自绑定到“隐藏”属性的方法
- mysql - 内部选择,按区域排序的列总和
- mysql - 无法更新视图 - UPDATE 的目标表不可更新
- reactjs - Paystack 支付网关未在本机反应中显示
- amazon-web-services - AWS HTTP API Gateway 基于 URL 的路由
- recursion - 获取堆栈溢出的函数的递归迭代