Download the PHP package gsferro/powermodel without Composer
On this page you can find all versions of the php package gsferro/powermodel. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download gsferro/powermodel
More information about gsferro/powermodel
Files in gsferro/powermodel
Package powermodel
Short Description Forma elegante e eficiente de formatar campos de data, hora e afins ao exibir, colocando somente um sufixo no nome original do atributo sem precisar declarar Accessors e/ou Mutators dentro da model
License MIT
Informations about the package powermodel
Laravel PowerModel
Forma elegante e eficiente de formatar campos de data, hora e afins, colocando somente um sufixo no nome original do atributo sem precisar declarar Accessors e/ou Mutators dentro da model. Pode facilmente também exibir um somatório usando relacionamento, sem precisar declarar o Accessor, como visto no Uso avançado
Instalação
composer require gsferro/powermodel
- Caso de algum Problema por conta da sua versão do php (<8.0.0), execute:
Configurar Model
Na model coloquei a trait PowerModel
Uso
# Para fins de demonstração
$model = Model::first();
-
Datas:
- formato de banco para BR
-
CPF | CNPJ -
_inc
- Verifica se o valor é um cpf ou cnpj e coloca a mascara de acordo
-
Valor Monetário -
_mbr
(float) -
Valor Numerico -
_nbr
(int) - Email Mascarado -
_msk
Uso Avançado
-
Sum -
<relationName>_sum_<collumn_name>
- Ou você pode simplesmente fazer assim:
-
Count -
<relationName>_count_relation
- Ou você pode simplesmente fazer assim:
Appends
Caso queria ao invocar a model, já exibir o Accessor, basta colocado no append:
-
Usando o exemplo do Uso avançado
-
Sem append:
-
Com append na model:
- Com append usando prefixo de relacionamento, sem precisar criar o Accessor:
-
TODO
- No getAttribute
- Prefixo para soma campo em um relacionamento
- IP
- TelCel
- Implementar para o setAtribute
- No caso de empty, devolver um valor padrão que esteja dentro de uma config ao inves de somente ""
Observações Gerais
- Na versão do laravel 8.77 foi lançada uma nova abordagem para criar os Accessors e Mutators
- Fique a vontade para enviar pull-request com mais formatações genéricas para facilitar o uso no dia-a-dia
License
- MIT License