如何使用 Laravel Livewire 和 Spatie 媒体库上传图像?

ken*_*n50 5 media-library laravel laravel-livewire

我正在使用 Laravel Livewire 和 Spatie 媒体库,但我在他们的文档中找不到任何有关如何执行此操作的有用信息。

我正在尝试这个,但它给了我错误

$this->menu->addMediaFromUrl($this->menu_image->temporaryUrl())->toMediaCollection('menu_image');
Run Code Online (Sandbox Code Playgroud)

我收到这个错误 出现错误

小智 6

对我来说它的工作原理是这样的:

public $uploadedItems;
    
public function updatedUploadedItems($uploadedFile)
{
    $item = Item::create();

    $item
        ->addMedia($uploadedFile->getRealPath())
        ->usingName($uploadedFile->getClientOriginalName())
        ->toMediaCollection('images');
}
Run Code Online (Sandbox Code Playgroud)


小智 1

这是测试后对我有用的唯一方法

      $this->menu
           ->addMediaFromString($this->menu_image->get())
           ->usingFileName($this->menu_image->getFilename())
           ->toMediaCollection('menu_image');
Run Code Online (Sandbox Code Playgroud)