fhusquinet / laravel-model-json-options
Store options as JSON values easily on your models.
Requires
- php: ^8.0
- illuminate/config: ^8.0|^9.0
- illuminate/database: ^8.0|^9.0
- illuminate/support: ^8.0|^9.0
Requires (Dev)
- orchestra/testbench: ~3.5.0|~3.6.0
- phpunit/phpunit: ^7.0
This package is auto-updated.
Last update: 2024-10-20 20:36:47 UTC
README
If you are storing a lot of values, especially booleans, as columns in your database, and if this data is not always the same for each row you might want to consider using a JSON column. To ease up the usage of it, this package provides an easy way API toscope results from your database and getting/setting options. If you are used to Laravel's syntax you will be familiar with this one as well.
Installation
You can install the package via composer:
composer require fhusquinet/laravel-model-json-options
Usage
Add the HasOptions trait to your wanted models.
// App\Models\Article.php namespace App\Models; use FHusquinet\ModelOptions\Traits\HasOptions; use Illuminate\Database\Eloquent\Model; class Article extends Model { use HasOptions;
You should also include the options column to the model's table using a migration.
Schema::table('articles', function (Blueprint $table) { $table->json('options')->nullable(); });
Testing
composer test
Changelog
Please see CHANGELOG for more information what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email florian.husquinet@deegital.be instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.