Bazı web projeleri için Golang Revel kullanıyorum ve şu ana kadar 12 proje yaptım. Hepsinde dönüş türleri nedeniyle çok fazla kod fazlalığım var. Bu iki işlevin bak:Golang'da dinamik tip yapısı nasıl döndürülür?
func (c Helper) Brands() []*models.Brand{
//do some select on rethinkdb and populate correct model
var brands []*models.Brand
rows.All(&brands)
return brands
}
func (c Helper) BlogPosts() []*models.Post{
//do some select on rethinkdb and populate correct model
var posts []*models.Post
rows.All(&posts)
return posts
}
onlar her ikisi de getiri aynı veri tipi (tip yapı) Görüldüğü gibi. Benim fikrim böyle Dize var geçmesi içindi: Farklı modellerde ama aynı veri türü için tekrar tekrar aynı şeyi yapıyor veri türlerini dönen yerine için sadece bir yardımcı olabilir Bunun gibi
func (c Helper) ReturnModels(modelName string) []*interface{} {
//do rethinkdb select with modelName and return []*interface{} for modelName
}
.
Sorularım şunlardır:
- evet doğru docs
- Hayır ise beni işaret edebilir Eğer tüm
- bu mümkün mü, ben cevap :) dönmek sonra mutlu daha olacak
Sağ iz @ pregmatch 1 –