priblo / laravel-has-attributes
EAV模型属性特性
v1.3.0
2019-02-04 00:45 UTC
Requires
- php: >=5.6.4
- illuminate/config: ~5.4.0|~5.5.0|~5.6.0|~5.7.0
- illuminate/database: ~5.4.0|~5.5.0|~5.6.0|~5.7.0
- illuminate/support: ~5.4.0|~5.5.0|~5.6.0|~5.7.0
Requires (Dev)
- orchestra/database: ~3.4.0|~3.5.0|~3.6.0
- orchestra/testbench: ~3.4.0|~3.5.0|~3.6.0
- phpunit/phpunit: ^5.7|^6.2|^7.0
README
方便使用的EAV属性特性
此包提供了一个特性,可以将属性附加到任何Eloquent模型。常见用例是向模型添加设置。
属性存储遵循实体-属性-值模型。数据使用装饰器模式进行抽象。
安装
要求:Laravel >=5.4
Composer
composer require priblo/laravel-has-attributes
Laravel
此包支持自动发现。如果您的Laravel版本不支持它或您已禁用它,您可以通过将以下内容添加到 ./config/app.php 文件中的 'providers' 数组中来安装此包:
Priblo\LaravelHasAttributes\LaravelServiceProvider::class,
然后运行
php artisan vendor:publish --provider="Priblo\LaravelHasAttributes\LaravelServiceProvider" --tag="migrations"
php artisan vendor:publish --provider="Priblo\LaravelHasAttributes\LaravelServiceProvider" --tag="config"
然后迁移
php artisan migrate
缓存
缓存需要一个支持标签的驱动器。文件和数据库将无法工作,建议使用redis。请确保在配置中禁用缓存或使用数组驱动器进行本地开发。
在 has-settings.php 配置文件中,您可以启用/禁用缓存并设置缓存过期时间。
默认启用缓存
注意
请记住,EAV模型中的每个设置都在一个TEXT字段中设置,因此值为true的值将存储为"1"。
路线图
- 更多测试
- 扩展README.MD