GORM V1 与 V2 的区别:从导入路径识别版本
更新于 2026-10-02 20:02
搜索 GORM 示例时,经常看到两种导入路径。它们代表不同代际;判断教程适用哪个版本,先看 import,比只看“GORM”这个名称更准确。
从导入路径区分
版本 | Go 导入路径 | 代码仓库 |
|---|---|---|
GORM V1 |
|
|
GORM V2 |
|
|
github.com/go-gorm/gorm 是新版本的仓库地址,官方 Go 模块导入路径使用 gorm.io/gorm。
V2 的数据库驱动单独安装
以 SQLite 为例:
go get gorm.io/gorm
go get gorm.io/driver/sqliteimport (
"gorm.io/driver/sqlite"
"gorm.io/gorm"
)MySQL、PostgreSQL 等也有各自的驱动模块,按实际使用的数据库选择。
为什么 V2 的版本号可能还是 v1.x
官方发布说明指出,GORM 2.0 最初使用的 Git tag 是 v1.20.0。“GORM V2”与模块版本号首位不是一回事,不能因为版本显示 v1.x 就断定项目使用旧版 GORM。
阅读旧教程或迁移项目
先检查 go.mod 和导入路径,再选同一代际的文档。V2 调整了 API 和行为,驱动模块也不同,迁移不能只做 import 文本替换。
新项目使用当前版本时,以 gorm.io/gorm 的官方文档为准;已有项目结合查询、模型和事务等实际用法检查兼容性,不把两套示例直接混用。
参考:GORM 2.0 官方发布说明。
评论 0
还没有公开评论。
评论已关闭,历史评论仍可阅读。