这个报错内容与数据库无关,指的是gorm标签中的外键写错了。
像下面这个例子
type Project struct {
head.Model
ChargePersonName string `gorm:"column:charge_person_name`
ChargePersonId uint `gorm:"column:charge_person_id;comment:负责人id"`
ChargePerson *enterprise.Employee `gorm:"foreignKey:ChargePersonName"`
}
其中的字段ChargePerson
,它gorm标签foreignKey的值是ChargePersonName
。这个字段是个字符串,无法直接作为外键,应该写成foreignKey:ChargePersonId
。
此外,
而如果确实要使用ChargePersonName
作为外键,应该写成foreignKey:ChargePersonName;references:Name
,其中的Name
表示的是Employee模型中的Name
字段
END:以上为个人总结的经验.如果本篇文章对您有所帮助,欢迎点赞 收藏 留言!