Repolode
go-gorm

go-gorm/gorm

Un ORM completo para Go que asigna structs a tablas de bases de datos y admite asociaciones, hooks, transacciones y migraciones.

Estrellas
39,978
Forks
4,220
Issues abiertos
554
Último commit
el mes pasado

¿Qué es?

GORM es una biblioteca de mapeo objeto-relacional para Go. Permite definir modelos como structs de Go y realizar operaciones de creación, lectura, actualización y eliminación sin escribir SQL sin procesar para cada consulta, y también ofrece un generador de consultas SQL y la posibilidad de usar SQL sin procesar cuando se necesita.

La biblioteca cubre patrones relacionales comunes: has one, has many, belongs to, many to many, asociaciones polimórficas y herencia de tabla única, con carga anticipada mediante Preload y Joins. También ofrece transacciones con puntos de guardado, inserciones por lotes, upserts, bloqueo de filas, hooks para las operaciones de creación, actualización, eliminación y búsqueda, y migraciones automáticas de esquemas.

GORM se puede ampliar mediante una API de plugins. Entre los plugins documentados se incluyen un resolver de bases de datos para trabajar con varias bases de datos y dividir las operaciones de lectura y escritura, y una integración con Prometheus. La documentación y las guías están disponibles en gorm.io.

Funciones clave

  • 01Asociaciones que incluyen has one, has many, belongs to, many to many y asociaciones polimórficas.
  • 02Carga anticipada mediante Preload y Joins.
  • 03Transacciones con transacciones anidadas y puntos de guardado.
  • 04Inserciones por lotes, upserts, bloqueo de filas y FindInBatches.
  • 05Hooks para las operaciones de creación, guardado, actualización, eliminación y búsqueda.
  • 06Migraciones automáticas y una API de plugins.

Casos de uso

  • Crear un servicio web en Go respaldado por una base de datos relacional sin escribir SQL a mano para cada consulta.
  • Añadir división de lecturas y escrituras o conexiones a varias bases de datos mediante el plugin resolver.
  • Gestionar cambios de esquema durante el desarrollo con migraciones automáticas.

Inicio rápido

  1. 1

    Consulta las guías de gorm.io para obtener información sobre la instalación y el uso

Temas

Preguntas frecuentes

¿Qué es gorm?
Un ORM completo para Go que asigna structs a tablas de bases de datos y admite asociaciones, hooks, transacciones y migraciones. GORM es una biblioteca de mapeo objeto-relacional para Go. Permite definir modelos como structs de Go y realizar operaciones de creación, lectura, actualización y eliminación sin escribir SQL sin procesar para cada consulta, y también ofrece un generador de consultas SQL y la posibilidad de usar SQL sin procesar cuando se necesita.
¿gorm es gratuito? ¿Qué licencia tiene?
gorm es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿gorm sigue mantenido?
Actualizado en los últimos 6 meses. El último commit de gorm fue el 14 sept 2026.
¿Para qué puedo usar gorm?
Crear un servicio web en Go respaldado por una base de datos relacional sin escribir SQL a mano para cada consulta. Añadir división de lecturas y escrituras o conexiones a varias bases de datos mediante el plugin resolver. Gestionar cambios de esquema durante el desarrollo con migraciones automáticas.
¿Cómo se instala gorm?
Consulta las guías de gorm.io para obtener información sobre la instalación y el uso
¿Dónde consigo gorm?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/go-gorm/gorm

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados