问题内容
我有以下结构(为了可读性而被截断)
type schedule struct {
id int
userid int
user user `gorm:"embedded;foreignkey:userid;references:userid"`
}
然后是我的 user 结构(再次为了可读性而被截断):
type user struct {
id int
userid int
isactive bool
}
我正在 schedule
结构上尝试 createinbatches
(如 []schedule
)。但是当我这样做时,插入查询还尝试插入 user
结构中的值。
插入示例(部分代码):
err := db.transaction(func(tx *gorm.db) error {
if err := tx.createinbatches(&schedules, len(schedules)).error; err != nil {
return err //rollback
}
}
为了完整起见,这里是错误:
Error Inserting Schedule Batch: Error 1054: Unknown column 'is_active'
in 'field list'
是否有标签或任何可以执行的操作来从插入查询中省略 user 结构?当我输出查询时,它显示
insert into schedule(计划列...,[附加用户结构列])
我还根据此处的文档尝试了字段权限标签
正确答案
问题是您在 schedule
结构中为 user
使用 embedded
标签。当您删除它时,它应该按预期工作。您可以在文档
所以你的 schedule
结构应该如下所示:
type Schedule struct {
ID int
UserId int
User User `gorm:"foreignKey:UserId;references:UserId"`
}
以上就是带有嵌入式结构错误的 GORM CreateInBatches的详细内容,更多请关注编程网其它相关文章!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容猜你喜欢
AI推送时光机带有嵌入式结构错误的 GORM CreateInBatches
后端开发2024-02-05
咦!没有更多了?去看看其它编程学习网 内容吧