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
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
- Caso de algum Problema por conta da sua versão do php (<8.0.0), execute:
Configurar Model
- Na Model adicione a trait do pacote:
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
-
Ativo / Inativo:
_sai
- (bool) -
Sim / Não:
_ssn
- (bool) - Habilitado / Desabilitado (enable/disabled):
_sed
- (bool)
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