我是一个golang实习生。我有一个问题使用外键在gorm。我试图写一个crud operation.im使用gorm和使用外键时的错误:错误1452:无法添加或更新子行。
第一个
我得到了这个错误:
2022年11月23日14:31:33 /home/channellead/文档/博客-服务-go/内部/活动/博客/内容/行动.go:26错误1452:无法添加或更新子行:外键约束失败
(service-blog-go
. contents
,约束fk_contents_category_model
外键(cat_id
)引用categories
(id
))[3.247ms] [行:0]插入到contents
(created_at
,updated_at
,deleted_at
,cat_id
,title
,content
)值(“2022年11月23日14:31:33.972 ',”2022年11月23日14:31:33.972',空值,0,“霍达亚卡卡斯卡斯dg”,“测试”)
1条答案
按热度按时间zi8p0yeb1#
请注意插入查询。您将
0
指定为cat_id
,它引用了Category
表的ID。但是在Category
表中没有带有0
ID的条目。另一个重要的事实是,如果您使用gorm.Model
,则不需要显式使用ID
,因为它内部有一个ID
字段。CategoryModel字段应该被重命名为Category。这些是默认的,但是你可以配置这些东西。请阅读documentation。下面是工作代码GITHUB LINK。你可以克隆repo并运行。参考:Gorm Has One