pascal / laravel-presenter
view presenters for laravel.
Installs: 191
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 3
Forks: 1
pkg:composer/pascal/laravel-presenter
This package has no released version yet, and little information is available.
README
Installation
Add Presenter to your composer.json file:
"require": {
    "pascal/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' => [
    ...
    'Pascal\Presenter\PresenterServiceProvider'
    ...
];
Usage
First, generate a presenter
php artisan make:presenter [presenter name]
Here's an example of a presenter.
use Pascal\Presenter\Presenter;
class UserPresenter extends Presenter {
    public function name()
    {
        return $this->first_name . ' ' . $this->last_name;
    }
    public function joined()
    {
        return $this->created_at->diffForHumans();
    }
}
Next, on your entity, pull in the Pascal\Presenter\Presentable trait, which will instantiate the presenter class automaticly for you.
use Pascal\Presenter\Presentable;
class User extends Eloquent {
    use Presentable;
    protected $presenter = 'App\UserPresenter';
}
And that is all you have to do. Now you can do the following:
<p>Hi, {{ $user->present()->name }}</p>