miciew / eloquent-options
eloquent模型选项
1.0.6
2018-01-14 16:53 UTC
Requires
- php: >=7.0.0
This package is not auto-updated.
Last update: 2024-09-29 04:43:01 UTC
README
描述
该包解决了为特定模型存储自定义参数的问题。因此,无需添加迁移来创建额外的表字段。可以保存不同类型的数据,从数字到对象。
例如,需要添加一个参数来允许禁止文章。而不是在articles表中添加ban字段,可以在Article模型中声明方法
public function ban() { $this->setOption('ban', true); return $this; } public function unBan() { $this->setOption('ban', false); return $this; } public function isBan() { $default = false; return $this->getOptionValue('ban', $default); }
安装
composer require miciew/eloquent-options
发布包
php artisan vendor:publish --provider="Miciew\Laravel\Option\Providers\OptionServiceProvider"
php artisan migrate
使用
use Miciew\Laravel\Option\Traits\HasOptions; class Article { use HasOptions; }
方法:
public function options(): morphMany; public function setOption($name, $value = null): null|Option; public function getOption($name, $default = null): null|Option; public function getOptionValue($name, $default = null): mix;