LaravelPackages.net
Acme Inc.
Toggle sidebar
vicenterusso/laravel-table-structure

This is my package TableStructure

91
0
v0.0.1
About vicenterusso/laravel-table-structure

vicenterusso/laravel-table-structure is a Laravel package for this is my package tablestructure. It currently has 0 GitHub stars and 91 downloads on Packagist (latest version v0.0.1). Install it with composer require vicenterusso/laravel-table-structure. Discover more Laravel packages by vicenterusso or browse all Laravel packages to compare alternatives.

Last updated

Laravel Table Structure

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status

This package helps you to get information about your table fields adding only a trait to your model. You can also optionally cache the results.

Installation

You can install the package via composer:

composer require vicenterusso/laravel_table_structure

You can publish the config file with:

php artisan vendor:publish --provider="VRusso\TableStructure\TableStructureServiceProvider" --tag="laravel_table_structure-config"

This is the contents of the published config file:

return [

    /*
    |--------------------------------------------------------------------------
    | Enable Cache
    |--------------------------------------------------------------------------
    |
    | Enable or disable usage of cache for Schema queries.
    |
    */
    'use_cache' => false,

    /*
    |--------------------------------------------------------------------------
    | Cache Prefix
    |--------------------------------------------------------------------------
    |
    | Custom prefix for cache keys. Avoid empty values
    |
    */
    'cache_prefix' => env('TABLE_STRUCT_PREFIX', 'TABLE_STRUCT'),

];

Usage

Insert the following trait to any model, and you can retrieve all info about the table fields

# Add trait to model
use \VRusso\TableStructure\Traits\FieldsInfo;

# Call it anywhere
User::hasField('username'); 
//true/false

User::getAllFields();
//['username', 'password', ...]

User::getAllFieldsWithTypes();
//[
//    [
//    'field' => 'username',
//    'type' => 'string'
//    ],
//    (...)
//]

User::getAllFieldsWithTypeOf('integer');
//['id', ...]

Credits

License

The MIT License (MIT). Please see License File for more information.

Comments