为了账号安全,请及时绑定邮箱和手机立即绑定

从 Gorm 模型创建主键时出现问题

从 Gorm 模型创建主键时出现问题

Go
阿晨1998 2023-06-26 17:08:43
从 Gorm 模型创建主键时,它返回错误“重复列名:“id””我的模型看起来像type User struct { gorm.Model Id string gorm:"primary_key;" FirstName string LastName string }知道上面的模型有什么问题吗
查看完整描述

1 回答

?
温温酱

TA贡献1752条经验 获得超4个赞

GormID默认用作主键。它是您正在嵌入的一部分gorm.Model

嵌入 时gorm.Model,您应该省略它ID,因为 gorm 已经包含了它。另一种方法是删除嵌入gorm.Model并指定ID您自己。

引用gorm 约定页面:

gorm.Model 是一个基本的 GoLang 结构体,包含以下字段:ID、CreatedAt、UpdatedAt、DeletedAt。

它可以嵌入到您的模型中,或者您可以在没有它的情况下构建自己的模型。

与编译相反,模式创建失败的原因是许多数据库(包括 CockroachDB)都会进行不区分大小写的检查,除非您引用对象名称(Idmatches id,但"Id"不引用)。与不区分大小写相比,这会导致两个单独的列名称相匹配。


查看完整回答
反对 回复 2023-06-26
  • 1 回答
  • 0 关注
  • 257 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信