vicenterusso/laravel-table-structure

这是我制作的包 TableStructure

v0.0.1 2021-04-20 11:59 UTC

This package is auto-updated.

Last update: 2024-09-20 23:24:29 UTC


README

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

此包可以帮助您通过仅向模型添加一个 特质 来获取您的表字段信息。您也可以选择性地缓存结果。

安装

您可以通过 composer 安装此包

composer require vicenterusso/laravel_table_structure

您可以使用以下命令发布配置文件

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

这是发布配置文件的内容

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'),

];

使用方法

将以下特质插入到任何模型中,您就可以检索关于表字段的所有信息

# 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', ...]

鸣谢

许可证

MIT 许可证(MIT)。请参阅 许可证文件 获取更多信息。