PHPackages                             hadder/laravel-presenter - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Templating &amp; Views](/categories/templating)
4. /
5. hadder/laravel-presenter

ActiveLibrary[Templating &amp; Views](/categories/templating)

hadder/laravel-presenter
========================

Presenters baseado no laracasts/presenter

1.0.12(6mo ago)0139MITPHPPHP &gt;=7.0

Since Apr 18Pushed 6mo ago1 watchersCompare

[ Source](https://github.com/haddersoft/laravel-presenter)[ Packagist](https://packagist.org/packages/hadder/laravel-presenter)[ RSS](/packages/hadder-laravel-presenter/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (7)Dependencies (1)Versions (15)Used By (0)

Laravel Presenter
=================

[](#laravel-presenter)

Fork com modificações do pacote [laracasts/presenter](https://github.com/laracasts/Presenter) (Jeffrey )

Em alguns casos é necessário executar alguma lógica antes de apresentar algum dado ou simplismente alguma formatação se faz necessária.

- Esta lógica deve ser feita na view? **Não**.
- Deve ser feita no model? **NÃO!**

Para isto usamos "presenters". Este pacote tem esta finalidade.

Instalação
----------

[](#instalação)

Composer

```
composer require hadder/laravel-presenter

```

Uso
---

[](#uso)

O primeiro passo é armazenar seus apresentadores em algum lugar - em qualquer lugar. Esses serão objetos simples que não fazem nada além de formatar dados, conforme necessário.

```
use Hadder\LaravelPresenter\Presenter;

class UserPresenter extends Presenter {

    public function nomeCompleto()
    {
        return $this->nome . ' ' . $this->sobrenome;
    }

    public function data_nascimento()
    {
        return $this->data_nascimento->format('d/m/Y');
    }

}
```

Ou utilize o comando `php artisan presenter:make UserPresenter`

Em seguida no seu model utilize o trait `Hadder\LaravelPresenter\PresentableTrait`.

Exemplo:

```
