gocrew / laravel-presenter
view presenters for laravel.
Installs: 581
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 2
Forks: 0
Open Issues: 0
pkg:composer/gocrew/laravel-presenter
Requires
- php: >=5.5.0
- illuminate/console: ~5
- illuminate/support: ~5
Requires (Dev)
- mockery/mockery: ~0.9
- phpspec/phpspec: ~2.0
This package is not auto-updated.
Last update: 2017-01-20 22:57:33 UTC
README
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.