Laravel 7 : 未找到接口 'Spatie\MediaLibrary\HasMedia'
Laravel 7 : Interface 'Spatie\MediaLibrary\HasMedia' not found
我在使用 MediaLibrary 包时遇到这个错误
Interface 'Spatie\MediaLibrary\HasMedia' not found
Trait 'Spatie\MediaLibrary\InteractsWithMedia' not found
我的项目详情:-
php : 7.3.22
laravel : 7.28.3
我已经尝试按照文档 v7 以及 运行 下面的命令进行操作
composer require spatie/laravel-medialibrary
除此之外,我还检查了其他 post,我已按照大部分步骤操作,但仍然返回相同的错误
composer.json
"require": {
"php": "^7.2.5",
"fideloper/proxy": "^4.2",
"fruitcake/laravel-cors": "^1.0",
"guzzlehttp/guzzle": "^6.3",
"laravel/framework": "^7.0",
"laravel/tinker": "^2.0",
"laravelcollective/html": "^6.2",
"spatie/laravel-activitylog": "^3.16",
"spatie/laravel-medialibrary": "^7.19"
},
型号
use Illuminate\Database\Eloquent\Model;
use Spatie\Activitylog\Traits\LogsActivity;
use Spatie\MediaLibrary\HasMedia;
use Spatie\MediaLibrary\InteractsWithMedia;
class Applicant extends Model implements HasMedia
{
use LogsActivity, InteractsWithMedia;
}
确保遵循您正在使用的 Laravel-medialibrary 特定版本的文档。在您的情况下 version 7. It looks like you were following the version 8 文档。
在版本 7 中,特征是 Spatie\MediaLibrary\HasMedia\HasMediaTrait
而不是 Spatie\MediaLibrary\InteractsWithMedia
。而且接口是 Spatie\MediaLibrary\HasMedia\HasMedia
而不是 Spatie\MediaLibrary\HasMedia
.
如果您想改用版本 8,请将您的要求更改为 "spatie/laravel-medialibrary": "^8.0"
,然后 运行 composer update
。
我在使用 MediaLibrary 包时遇到这个错误
Interface 'Spatie\MediaLibrary\HasMedia' not found
Trait 'Spatie\MediaLibrary\InteractsWithMedia' not found
我的项目详情:-
php : 7.3.22
laravel : 7.28.3
我已经尝试按照文档 v7 以及 运行 下面的命令进行操作
composer require spatie/laravel-medialibrary
除此之外,我还检查了其他 post,我已按照大部分步骤操作,但仍然返回相同的错误
composer.json
"require": {
"php": "^7.2.5",
"fideloper/proxy": "^4.2",
"fruitcake/laravel-cors": "^1.0",
"guzzlehttp/guzzle": "^6.3",
"laravel/framework": "^7.0",
"laravel/tinker": "^2.0",
"laravelcollective/html": "^6.2",
"spatie/laravel-activitylog": "^3.16",
"spatie/laravel-medialibrary": "^7.19"
},
型号
use Illuminate\Database\Eloquent\Model;
use Spatie\Activitylog\Traits\LogsActivity;
use Spatie\MediaLibrary\HasMedia;
use Spatie\MediaLibrary\InteractsWithMedia;
class Applicant extends Model implements HasMedia
{
use LogsActivity, InteractsWithMedia;
}
确保遵循您正在使用的 Laravel-medialibrary 特定版本的文档。在您的情况下 version 7. It looks like you were following the version 8 文档。
在版本 7 中,特征是 Spatie\MediaLibrary\HasMedia\HasMediaTrait
而不是 Spatie\MediaLibrary\InteractsWithMedia
。而且接口是 Spatie\MediaLibrary\HasMedia\HasMedia
而不是 Spatie\MediaLibrary\HasMedia
.
如果您想改用版本 8,请将您的要求更改为 "spatie/laravel-medialibrary": "^8.0"
,然后 运行 composer update
。