gocrew/laravel-presenter

This package is abandoned and no longer maintained. No replacement package was suggested.

view presenters for laravel.

1.0.1 2015-11-20 00:07 UTC

This package is not auto-updated.

Last update: 2017-01-20 22:57:33 UTC


README

Build Status Latest Stable Version Latest Unstable Version License

Repo Picture

Installation

Add Presenter to your composer.json file:

"require": {
    "gocrew/laravel-presenter": "~1.0"
}

Now, run a composer update on the command line from the root of your project:

composer update

Registering the Package

Include the service provider within app/config/app.php. The service povider is needed for the generator artisan command.

'providers' => [
    ...
    gocrew\LaravelPresenter\PresenterServiceProvider::class
    ...
];

Usage

First, generate a presenter

php artisan make:presenter [presenter name]

Here's an example of a presenter.

use gocrew\LaravelPresenter\Presenter;

class UserPresenter extends Presenter {

    public function name()
    {
        return ucfirst($this->first_name) . ' ' . ucfirst($this->last_name);
    }

    public function joined()
    {
        return $this->created_at->diffForHumans();
    }

}

Next, on your entity, pull in the gocrew\LaravelPresenter\Presentable trait, which will instantiate the presenter class automatically for you.

use gocrew\LaravelPresenter\Presentable;

class User extends Eloquent {

    use Presentable;

    protected $presenter = App\UserPresenter::class;

}

And that is all you have to do. Now you can do the following:

<p>Hi, {{ $user->present()->name }}</p>

License

The contents of this repository is released under the MIT license.