Skip to content

Quickly set options in a JSON field to prevent database cluttering.

License

Notifications You must be signed in to change notification settings

henrotaym/laravel-model-json-options

 
 

Repository files navigation

Easily store options on your Eloquent models using JSON and a simple API.

Latest Version on Packagist Total Downloads

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.

About

Quickly set options in a JSON field to prevent database cluttering.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%