From 6350cffa5aebf803eb76de74a49c4327571f8a1a Mon Sep 17 00:00:00 2001 From: jan Date: Mon, 14 Nov 2016 21:55:41 +0100 Subject: FIX: grilist wieder schnell machen diff --git a/modules/grils/grils.go b/modules/grils/grils.go index 0fac5df..8382897 100644 --- a/modules/grils/grils.go +++ b/modules/grils/grils.go @@ -60,8 +60,7 @@ func (m *GrilsModule) getGrils(whereClause string, params ...interface{}) ([]*mo gril.KanjiName = *kanjiName } - gril.Tags = util.PGArray(tags) - gril.OtherNames = util.PGArray(otherNames) + m.c.Insert(gril.ID, gril) m.c.Insert(gril.ID, gril) diff --git a/modules/lists/lists.go b/modules/lists/lists.go index 387e48a..05baf4a 100644 --- a/modules/lists/lists.go +++ b/modules/lists/lists.go @@ -83,6 +83,7 @@ func (m *Module) getListGrils(list *models.List) error { defer rows.Close() list.Grils = list.Grils[:0] + var ids []int for rows.Next() { var grilID int lg := &models.ListGril{} @@ -91,16 +92,21 @@ func (m *Module) getListGrils(list *models.List) error { log.Println("error scanning row in getListGrils:", err) continue } - - gril, err := m.grils.FromID(grilID) - if err != nil { - log.Println("error getting listGril:", err) - continue - } - lg.Gril = gril + ids = append(ids, grilID) list.Grils = append(list.Grils, lg) } + + // grils holen + grils, err := m.grils.FromIDs(ids) + if err != nil { + return err + } + + for id, gril := range grils { + list.Grils[id].Gril = gril + } + sort.Sort(ListGrils(list.Grils)) return nil } -- cgit v0.10.1