laravel-table-structure maintained by vicenterusso
Description
This is my package TableStructure
Author
Last update
2021/04/20 18:04
(dev-master)
License
Downloads
91
Tags
Laravel Table Structure
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.