登录
首页 >  Golang >  Go问答

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

来源:Golang技术栈

时间:2023-03-22 15:14:48 230浏览 收藏

珍惜时间,勤奋学习!今天给大家带来《从gorm模型创建主键时出现问题》,正文内容主要涉及到golang等等,如果你正在学习Golang,或者是对Golang有疑问,欢迎大家关注我!后面我会持续更新相关内容的,希望都能帮到正在学习的大家!

问题内容

从gorm模型创建主键时,它返回错误“重复列名:”“d”

我的模型看起来像

type User struct { 
gorm.Model 
Id string gorm:"primary_key;" 
FirstName string 
LastName string 
}

知道上述模型有什么问题吗

正确答案

Gorm[ID](https://gorm.io/docs/conventions.html#ID-as-Primary- Key)默认用作主键。它是您嵌入的[一部分。](https://gorm.io/docs/conventions.html#gorm- Model)gorm.Model

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

引用gorm 约定页面:

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

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

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

以上就是《从gorm模型创建主键时出现问题》的详细内容,更多关于golang的资料请关注golang学习网公众号!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表