Sobre o projeto
O GORM é uma biblioteca de mapeamento objeto-relacional (ORM) de código aberto para a linguagem de programação Go, projetada para ser amigável ao desenvolvedor. De acordo com seu README, ele fornece um ORM com recursos completos.
Funcionalidades principais listadas incluem associações como Tem Um, Tem Muitos, Pertence A, Muitos Para Muitos, Polimorfismo e herança em uma única tabela. Ele suporta ganchos para operações Antes/Depois de Criar, Salvar, Atualizar, Excluir e Encontrar. O carregamento antecipado está disponível por meio de Preload e Joins. A biblioteca também abrange transações, transações aninhadas, pontos de salvamento e RollbackTo a um ponto salvo.
Outras capacidades mencionadas incluem suporte a Contexto, Modo de Declaração Prévia e Modo de Execução Simulada. Ele oferece inserção em lote, FindInBatches e Find Para Mapa. Um Construtor de SQL está incluído, juntamente com Upsert, Bloqueio, Dicas de Otimizador/Índice/Comentário, NamedArg e Pesquisa/Atualização/Criação com Expressão SQL. Chaves primárias compostas e migrações automáticas são suportadas, assim como um registrador.
O README destaca uma API de plugin extensível e flexível, citando exemplos como um Resolvedor de Banco de Dados para múltiplos bancos de dados e divisão de leitura/escrita, e integração com Prometheus. Ele afirma que cada funcionalidade vem com testes.
Documentação está disponível por meio dos Guias do GORM em gorm.io e Guias do Gen em gorm.io/gen. O projeto aceita contribuições e vincula-se a uma página de contribuição. É liberado sob a Licença MIT, com direitos autorais atribuídos a Jinzhu desde 2013.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.