tequilarapido / presenter
为 Eloquent 模型提供简单直接的展示实现。
v1.1.5
2020-03-03 13:13 UTC
Requires
- laravel/framework: ~5.8.0|^6.0|^7.0
Requires (Dev)
- orchestra/testbench: ^4.0
This package is auto-updated.
Last update: 2024-09-14 07:14:59 UTC
README
为 Eloquent 模型提供简单直接的展示实现。
内容
安装
您可以使用 composer 安装此包
$ composer require tequilarapido/presenter
用法
假设我们有一个 User 模型类
class User extends Model { protected $fillables = ['first_name', 'last_name']; }
- 1/ 创建一个展示类,如下所示,并向其中添加展示方法。以示例为例,我们将创建一个返回用户全名的方法。
use Tequilarapido\Presenter\Presenter; class UserPresenter extends Presenter { public function name() { return $this->first_name . ' ' . $this->last_name; } }
我们可以在展示类内部直接访问模型属性。我们也可以通过 $model 属性访问它们
$this->first_name // or $this->model->first_name // or $this->model->getAttribute('first_name')
- 2/ 您需要在模型中使用公共
$presenter属性引用此类,并使用Prensentable特性。
use Tequilarapido\Presenter\Presentable; class User extends Model { use Presentable; protected $fillables = ['first_name', 'last_name']; public $presenter = UserPresenter::class; }
- 3/ 您可以这样获取展示值
$user = User::find(1); // Retreive as property $user->present()->name // you can alse call the method $user->present()->name()
变更日志
请参阅 变更日志 了解最近的变化。
测试
$ composer test
安全
如果您发现任何与安全相关的问题,请通过 :author_email 发送电子邮件,而不是使用问题跟踪器。
贡献
请参阅 贡献指南 了解详细信息。
致谢
许可
MIT 许可证 (MIT)。请参阅 许可文件 了解更多信息。