Fix genre IDs changing on re-encounter
authorJacob Casper <dev@jacobcasper.com>
Thu, 16 Apr 2020 22:19:14 +0000 (17:19 -0500)
committerJacob Casper <dev@jacobcasper.com>
Fri, 17 Apr 2020 00:20:10 +0000 (19:20 -0500)
routes/artist/artist.go

index cc09563..09788ad 100644 (file)
@@ -95,7 +95,7 @@ func Add(env *env.Env) routes.Handler {
                env.Db.Db.Exec("INSERT INTO ARTIST (ID, NAME) VALUES (?, ?)", artist.ID, artist.Name)
 
                for _, genre := range artist.Genres {
                env.Db.Db.Exec("INSERT INTO ARTIST (ID, NAME) VALUES (?, ?)", artist.ID, artist.Name)
 
                for _, genre := range artist.Genres {
-                       result, err := env.Db.Db.Exec("REPLACE INTO GENRE (NAME) VALUES (?)", genre)
+                       result, err := env.Db.Db.Exec("INSERT OR IGNORE INTO GENRE (NAME) VALUES (?)", genre)
                        if err != nil {
                                log.Printf("Failed to insert genre %s: %s", genre, err.Error())
                                http.Error(w, http.StatusText(http.StatusInternalServerError), http.StatusInternalServerError)
                        if err != nil {
                                log.Printf("Failed to insert genre %s: %s", genre, err.Error())
                                http.Error(w, http.StatusText(http.StatusInternalServerError), http.StatusInternalServerError)