datacreativa / laravel-presentable
为 Eloquent 模型创建演示者
v1.2.0
2023-02-21 04:44 UTC
Requires
- php: ^8.1
- illuminate/support: ^10.0
Requires (Dev)
- orchestra/testbench: ^8.0
- phpunit/phpunit: ^9.5.10
This package is not auto-updated.
Last update: 2024-09-18 23:56:48 UTC
README
此包允许通过在模型演示者类中定义的方法以不同的方式展示信息。
安装
您可以通过 composer 安装此包
composer require datacreativa/laravel-presentable
用法
在任意 Eloquent 模型中使用 HasPresentable
特性,您还必须添加 $presenter
属性。
use App\Models\Presenters\UserPresenter; use TheHiveTeam\Presentable\HasPresentable; class User extends Model { use HasPresentable; protected $presenter = UserPresenter::class; }
您可以使用此命令生成一个类演示者
php artisan make:presenter UserPresenter
在此类中,您可以定义任何方法,例如
namespace App\Models\Presenters; use TheHiveTeam\Presentable\Presenter; class UserPresenter extends Presenter { public function name() { return ucwords($this->model->name); } }
现在您在 Eloquent 模型中有了可用的 present()
方法。
$user = (new User)->setAttribute('name', 'john doe'); $user->present()->name; // John Doe
享受它吧!
测试
composer test
更新日志
请参阅 更新日志 了解最近更改的更多信息。
贡献
请参阅 贡献指南 了解详细信息。
鸣谢
许可证
MIT 许可证 (MIT)。请参阅 许可证文件 了解更多信息。