使用Spatie\MediaLibrary上传文件时出现Laravel软件包错误

我只是尝试使用Spatie\MediaLibrary软件包将图像上传到服务器。然后laravel给出了这个未找到函数的错误。我尝试了所有解决方案,没有人工作

这是我正在使用的代码

> public function update(Request $request, Channel $channel)
>     {
>        if($request->hasFile("image")){
>          $channel->addAllMediaFromRequest('image')->toMediaCollection('images');
>        }
>     }

http://img3.mukewang.com/62ff3f02000196a612270531.jpg

use Spatie\MediaLibrary\HasMedia\HasMedia;

use Spatie\MediaLibrary\HasMedia\HasMediaTrait;

use \YouTube\Model;

use App\User;


class Channel extends Model implements HasMedia

{

    use HasMediaTrait;

    public function user()

    {

        return $this->belongsTo(User::class);

    }

}

这是我的模型


长风秋雁
浏览 94回答 2
2回答

叮当猫咪

该方法返回新添加的媒体的集合。addAllMediaFromRequest()您需要循环访问每个添加的文件以将其添加到集合中。$channel->addAllMediaFromRequest('image')     ->each(function ($fileAdder) {             $fileAdder->toMediaCollection('images');     });

狐的传说

我认为错误非常明显,说它找不到您在使用语句中拥有的模型。你真的应该导入laravel模型。即use \YouTube\Model;use Illuminate\Database\Eloquent\Model;
打开App,查看更多内容
随时随地看视频慕课网APP