Lacrei Models
Pacote centralizado para os modelos de domínio (models.py) do ecossistema Lacrei.
🎯 Objetivo
Centralizar todos os modelos do Django utilizados pelas aplicações Lacrei, permitindo:
- Modularidade: Desacoplar a camada de dados da lógica de aplicação.
- Reuso: Serviços diferentes podem consumir os mesmos modelos de forma consistente.
- Governança e Consistência: Ponto único de verdade para estrutura de dados.
É uma dependência interna, destinada a ser usada por aplicações como lacrei-api.
Configurações Iniciais
- Clone o Repositório, na mesmo local onde se encontra a lacrei-api e a lacrei-migrations:
git clone https://github.com/Lacrei/lacrei-models.git
cd lacrei-models
- Instale as Dependências:
make install
poetry add lacrei-models
⚙️ Uso
Para testar localmente as mudanças na models antes de pubicar no PyPI:
poetry add --editable C:/local onde se encontra o lacrei-models
Importe os modelos no código:
from lacrei_models.address.models import Address
from lacrei_models.client.models import User
from lacrei_models.appointments.models import Appointment
from lacrei_models.professional.models import Professional
from lacrei_models.notification.models import Notification
from lacrei_models.payment.models import Payment
from lacrei_models.sync.models import GoogleAccount
Comandos principais:
make test # Rodar testes
make format # Formatar código
make lint # Verificar estilo e erros
make quality # Rodar todas as verificações
� Pre-commit Hooks
O projeto utiliza pre-commit hooks para garantir qualidade do código automaticamente antes de cada commit.
Como funciona
- Execução automática: Os hooks rodam antes de cada commit
- Validação: Se algum check falhar, o commit é bloqueado
- Correção automática: Black e isort corrigem o código automaticamente
- Re-commit necessário: Após correções, adicione as mudanças e tente commitar novamente
Os hooks são instalados automaticamente ao executar make install.
Comandos Individuais
Você também pode executar as ferramentas de lint individualmente:
# Black - Formatar código automaticamente
poetry run black .
# isort - Ordenar e agrupar imports
poetry run isort .
# Flake8 - Verificar estilo e erros (sem alteração automática)
poetry run flake8 .
Bypass de Hooks (Uso Excepcional)
Em casos específicos, você pode pular os hooks:
git commit --no-verify -m "mensagem"
# ou
git commit -n -m "mensagem"
⚠️ Atenção: Use apenas em situações excepcionais. O bypass não é recomendado pois os checks do CI continuarão validando o código.
�🚀 Publicação no PyPI
Enviar atualizações para o github em uma nova branch e criar o PR
git push origin branch
1- Ir até o actions dentro do repositório lacrei-models 2- Clicar em publish package 3- e depois ir em run workflow e selecionar a sua branch 4- A versão to publish deve ser uma versão acima da atual. Verificar no PyPI a ultima versão para evitar conflitos.
Metadata
Release files for lacrei-models 3.4.11
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| lacrei_models-3.4.11.tar.gz | 22.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lacrei_models-3.4.11-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 54.0 kB
Release files / lacrei_models-3.4.11.tar.gz
| Download URL | lacrei_models-3.4.11.tar.gz |
|---|---|
| Size | 22.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ca6b9a6ed01cfce714d873672585259a7a8b51f92408771e108dc485e001101b
|
|
BLAKE2b-256 checksum How to use checksums |
2ffaad3d704b9be6b9437a30dbbfa497eaf252ce58c8f7a89e2a2f2702c64ceb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / lacrei_models-3.4.11-py3-none-any.whl
| Download URL | lacrei_models-3.4.11-py3-none-any.whl |
|---|---|
| Size | 31.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
559a1ba47f6978d06494911e42400b379703bbc3b6835ef61f633b43097de949
|
|
BLAKE2b-256 checksum How to use checksums |
6c2fb23396c9a4ca43a75241e954d61fc099c746686f837ef676fe26bb4476fa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|