When I try to get episodes back from a podcast I get invalid association []
. Not sure what I'm doing wrong.
package main
import (
"log"
"github.com/jinzhu/gorm"
_ "github.com/mattn/go-sqlite3"
)
type Podcast struct {
Id int
Title string
RssUrl string `sql:"unique_index"`
Url string
Episodes []Episode
}
type Episode struct {
Id int
PodcastID int `sql:"index"`
Title string
Url string `sql:"unique_index"`
Downloaded bool
}
func main() {
db, err := gorm.Open("sqlite3", "gorm.db")
if err != nil {
log.Fatal(err)
}
db.LogMode(true)
db.CreateTable(&Podcast{})
db.CreateTable(&Episode{})
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}},
}
var episodes []Episode
db.Model(&podcast).Related(&episodes)
}
Which version of GO and GORM are you using? I've tried on my machine and this is the log:
Please note that because you didn't create the podcast variable, the podcast_id is 0 so the query does not make so much sense.
In order to create the podcast, simply add this code