go - 如何使用 gorm 将记录插入现有的有很多表

标签 go go-gorm

我有两张 table

type Podcast struct {
    Id       int
    Title    string
    RssUrl   string `sql:"unique_index"`
    Episodes []Episode
}

type Episode struct {
    Id         int
    PodcastID  int
    Title      string
    Url        string `sql:"unique_index"`
    Downloaded bool
}

我知道如何像这样将剧集插入到新播客中。

podcast := Podcast{
    Title:    "My Podcast",
    RssUrl:   "http://example.com/feed/",
    Url:      "http://www.example.com",
    Episodes: []Episode{{
        Title:      "Episode One Point Oh!", 
        Url:        "http://www.example.com/one-point-oh", 
        Downloaded: false,
    }},
}

db.Create(&podcast)

如何将剧集添加到以后已经存在的播客中?

最佳答案

我想通了。

var id int
row := db.Table("podcasts").Where("id = ?", 1).Select("id").Row()
row.Scan(&id)

episode := Episode{
    Title:      "Episode Two!",
    Url:        "http://www.example.com/episode-two",
    Downloaded: true,
    PodcastID:  id,
}

db.Create(&episode)

关于go - 如何使用 gorm 将记录插入现有的有很多表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30969017/

相关文章:

Gorm 多个预加载不起作用

go - GORM更新查询会自动将时间列分配在何处

Golang 枸杞 : How to serve static content and api at the same time

golang使用ssh连接ssh并打印错误异常

sockets - 如何灵活调整套接字数据长度?

go - 结构图和 "assignment to entry in nil map"的图

Gorm加载相关数据

mongodb - 如何删除 Mongodb/Golang 中的数组项?

go - Go-Gorm有一个始终为空的子表

gorm 获取当前数据库连接