advanced-nova-media-library icon indicating copy to clipboard operation
advanced-nova-media-library copied to clipboard

Call to undefined method App\Models\Product::getMedia()

Open pit07 opened this issue 3 years ago • 2 comments

Hi!

I have an issue with this extension.

Call to undefined method App\Models\Product::getMedia()

My model:


use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Spatie\MediaLibrary\MediaCollections\Models\Media;

class Product extends Model
{
    use HasFactory;

    public function registerMediaCollections(): void
    {
        $this->addMediaCollection('gallery');
    }
}

My nova file:

use Ebess\AdvancedNovaMediaLibrary\Fields\Files;
use Ebess\AdvancedNovaMediaLibrary\Fields\Images;

public function fields(NovaRequest $request)
    {
        return [
            ID::make()->sortable(),
            Images::make('Multiple files', 'gallery'),
        ];
    }

Thanks for your help!

pit07 avatar May 03 '22 17:05 pit07

first composer require spatie/laravel-medialibrary second Model

class XXXXX extends Model implements HasMedia { use HasFactory; use InteractsWithMedia; }

Will be working

8108905 avatar May 04 '22 14:05 8108905

I solved the issue by preparing the Model according to instructions at:

https://spatie.be/docs/laravel-medialibrary/v10/basic-usage/preparing-your-model

interpegasus avatar Jun 06 '22 21:06 interpegasus