Laravel Meta
Metadata for your Eloquent model
Installation
You can install the package via composer:
composer require appstract/laravel-meta
Publish, migrate
By running php artisan vendor:publish --provider="Appstract\Meta\MetaServiceProvider"
in your project all files for this package will be published. For this package, it's only a migration. Run php artisan migrate
to migrate the table. There will now be a table named metas
in your database.
Usage
You can easily add Meta to an Eloquent model. Just add this to your model:
use Appstract\Meta\Metable;
class Book extends Model
{
use Metable;
}
Then you can get, add, update and delete meta to the model.
$book = Book::find(1);
$book->addMeta('someKey', 'someValue');
$book->getMeta('someKey');
$book->getMetaValue('someKey');
$book->hasMeta('someKey');
$book->updateMeta('someKey', 'anotherValue');
$book->addOrUpdateMeta('someKey', 'someValue');
$book->deleteMeta('someKey');
$book->getAllMeta();
$book->deleteAllMeta();
Testing
$ composer test
Contributing
Contributions are welcome, thanks to y'all :)
About Appstract
Appstract is a small team from The Netherlands. We create (open source) tools for webdevelopment and write about related subjects on Medium. You can follow us on Twitter, buy us a beer or support us on Patreon.
License
The MIT License (MIT). Please see License File for more information.