coburncodes/presenter

此软件包最新版本(1.1.1)没有提供许可信息。

一个基于Laracasts软件包的Laravel 5.5+演示者软件包

1.1.1 2018-02-24 06:29 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:21:04 UTC


README

coburncodes/presenter 软件包允许您轻松集成视图演示者,以保持模型整洁。

此软件包采用了Laracasts的视图演示者。此软件包与Laravel v5.6+兼容。

此软件包还提供了额外的便利,如

  • 发布配置文件以更改视图演示者的路径
  • 包含一个Artisan命令,用于为您模型的模型生成新的视图演示者。

安装

您可以通过composer安装此软件包

$ composer require coburncodes/presenter

配置文件

如果您想更改演示者存储的默认位置,可以发布一个配置文件。默认情况下,视图演示者存储在应用根目录的 Presenters 目录中。只需运行以下命令即可发布配置文件

$ php artisan vendor:publish

查找演示者供应商

Provider: Coburncodes\Presenter\Providers\PresenterServiceProvider

用法

将特性添加到模型

要将视图演示者实现到模型中,请将 presentable 特性添加到您的模型中。

use Coburncodes\Presenter\Presentable;

class User
{
    use Presentable;

    protected $fillable = [
        'first_name', 'last_name', 'email', 'password',
    ];
...

使用Artisan创建演示者

该软件包包含一个Artisan命令,用于为模型生成视图演示者。只需运行

$ php artisan presenter:generate

按照命令提示进行操作。输入您想要创建演示者的模型名称以及创建的初始演示方法。

手动创建演示者

您可以在您的 Presenters 目录中手动创建演示者。该软件包使用 ModelPresenter 作为每个演示者的类名约定。例如,UserPresenter。以下是一个示例

<?php

namespace App\Presenters;

use Coburncodes\Presenter\Presenter;

class UserPresenter extends Presenter
{
    public function fullName()
    {
        return $this->first_name . ' ' . $this->last_name;
    }
}

在视图中实现

在集成此软件包之前,您可能编写了

public function index()
{
    return Auth::user()->first_name . ' ' . Auth::user()->last_name;
}

这会变得非常混乱,并且您没有将代码DRY化。

使用此软件包,您添加了 present() 方法以及您在演示者中使用的方程序。

public function index()
{
    return Auth::user()->present()->fullName;
}

许可

MIT许可证(MIT)。有关更多信息,请参阅许可文件