在 GORM 中,可以使用 ForeignKey
方法来设置外键关联。以下是一个简单的例子:
type User struct {
ID uint
Name string
Posts []Post
}
type Post struct {
ID uint
Title string
Content string
UserID uint
User User // 外键关联到 User 模型
}
// 定义数据库表结构
db.AutoMigrate(&User{})
db.AutoMigrate(&Post{})
// 设置外键关联
db.Model(&Post{}).AddForeignKey("user_id", "users(id)", "CASCADE", "CASCADE")
在上面的例子中,我们将 Post
模型和 User
模型进行了关联,并使用 AddForeignKey
方法在 posts
表中添加了一个外键 user_id
,它参考了 users
表中的 id
字段。此外,我们还指定了更新和删除操作时的级联处理方式。
注意,在使用 AddForeignKey
方法之前,需要先创建好相应的表结构,并且在 User
模型中定义一个 Posts
属性,以便于 GORM 进行关联查询。