gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-01 22:27:44 28 4
gpt4 key购买 nike

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

我的模特看起来像

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

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

最佳答案

默认情况下,Gorm使用 ID 作为主键。这是part of您要嵌入的gorm.Model

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

引用gorm conventions页面:

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

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

在模式创建而不是编译上失败的原因是,除非引用对象名称(Id匹配id,但"Id"不这样做),否则许多数据库(包括CockroachDB)都执行不区分大小写的检查。与不区分大小写的结果相比,这将导致两个单独的列名称匹配。

关于go - 从gorm模型创建主键时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58921222/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com