A package for easily uploading and attaching media files to models with Laravel
plank/laravel-mediable is a Laravel package for a package for easily uploading and attaching media files to models with laravel.
It currently has 825 GitHub stars and 1.599.556 downloads on Packagist (latest version 6.5.0).
Install it with composer require plank/laravel-mediable.
Discover more Laravel packages by plank
or browse all Laravel packages to compare alternatives.
Last updated
Laravel-Mediable is a package for easily uploading and attaching media files to models with Laravel.
image for JPEG, PNG or GIF).'thumbnail', 'featured image', 'gallery' or 'download'.Upload a file to the server, and place it in a directory on the filesystem disk named "uploads". This will create a Media record that can be used to refer to the file.
$media = MediaUploader::fromSource($request->file('thumb'))
->toDestination('uploads', 'blog/thumbnails')
->upload();
Attach the Media to another eloquent model with one or more tags defining their relationship.
$post = Post::create($this->request->input());
$post->attachMedia($media, ['thumbnail']);
Retrieve the media from the model by its tag(s).
$post->getMedia('thumbnail')->first()->getUrl();
Add the package to your Laravel app using composer
composer require plank/laravel-mediable
Register the package's service provider in config/app.php. In Laravel versions 5.5 and beyond, this step can be skipped if package auto-discovery is enabled.
'providers' => [
...
Plank\Mediable\MediableServiceProvider::class,
...
];
The package comes with a Facade for the image uploader, which you can optionally register as well. In Laravel versions 5.5 and beyond, this step can be skipped if package auto-discovery is enabled.
'aliases' => [
...
'MediaUploader' => Plank\Mediable\MediaUploaderFacade::class,
...
]
Publish the config file (config/mediable.php) of the package using artisan.
php artisan vendor:publish --provider="Plank\Mediable\MediableServiceProvider"
Run the migrations to add the required tables to your database.
php artisan migrate
Read the documentation here.
This package is released under the MIT license (MIT).
Plank is a web development agency based in Montreal, Canada.