Your Question
我在文档里看到的一对一模型是需要另外使用一个Id字段与需要关联的记录进行绑定, 在我看来既然是 1对1 关系, 直接使用两个相同的主键来绑定会不会好一点. 使用主键在MySQL也可以减少一次回表操作.
目前我的评论表就是根据字段拆分成了两张表, 发现使用主键一致的方式无法利用到 orm 的关联模型, 但是我觉得这种操作在 sql 建模中还是挺常见的.
Expected answer
我不知道是否是我看漏了还是本来不支持这种情况, 可以帮忙解答一下吗
Comment From: cyb0225
我刚刚测试了一下猜想,发现我可以通过以下方式实现上述的问题
type User struct {
gorm.Model
CreditCard CreditCard `gorm:"foreignKey:ID"`
}
type CreditCard struct {
ID uint `gorm:"primarykey"`
Name string `gorm:"column:name"`
CreatedAt time.Time
UpdatedAt time.Time
DeletedAt gorm.DeletedAt `gorm:"index"`
}