更改日志

v2.0 - 2020.08

GORM 2.0 是从头开始重写的,它引入了一些不兼容的 API 更改和许多改进

  • 性能改进
  • 模块化
  • 支持上下文、批量插入、预处理语句模式、DryRun 模式、连接预加载、查找映射、从映射创建、批量查找
  • 支持嵌套事务/保存点/回滚到保存点
  • 支持命名参数、分组条件、Upsert、锁定、优化器/索引/注释提示,子查询改进
  • 完全支持自引用关系,连接表改进,批量数据的关联模式
  • 支持多个字段跟踪创建/更新时间,增加了对 UNIX(毫秒/纳秒)的支持
  • 字段权限支持:只读、只写、仅创建、仅更新、忽略
  • 新的插件系统:多数据库、读/写分离支持插件数据库解析器、普罗米修斯集成…
  • 新的钩子 API:与插件的统一接口
  • 新的迁移器:允许为关系创建数据库外键,约束/检查器支持,增强的索引支持
  • 新的记录器:上下文支持,改进的可扩展性
  • 统一的命名策略:表名、字段名、连接表名、外键、检查器、索引名规则
  • 更好的自定义数据类型支持(例如:JSON)

GORM 2.0 发行说明

v1.0 - 2016.04

GORM V1 文档

重大更改

  • gorm.Open 返回 *gorm.DB 而不是 gorm.DB
  • 更新将只更新更改的字段
  • 软删除将只检查 deleted_at IS NULL
  • 新的 ToDBName 逻辑
    来自 golint 的常见首字母缩略词,如 HTTPURI 已转换为小写,因此 HTTP 的数据库名称为 http,而不是 h_t_t_p,但对于列表中未包含的其他首字母缩略词,如 SKU,其数据库名称为 s_k_u,此更改将其修复为 sku
  • 错误 RecordNotFound 已重命名为 ErrRecordNotFound
  • mssql 方言已重命名为 github.com/jinzhu/gorm/dialects/mssql
  • Hstore 已移至软件包 github.com/jinzhu/gorm/dialects/postgres

铂金赞助商

黄金赞助商

铂金赞助商

黄金赞助商