DB から HTTP ハンドラーへのマッピングに問題があります。したがって、Martini フレームワークでは、次のようにすることができます。
// main.go
package main
func main() {
db, err := gorm.Open("mysql", "<user>:<pass>@/mvc_demo")
m := martini.Classic()
m.Map(&db)
m.Run(":3000")
}
// controllers/index.go
package controllers
func IndexGET(w http.ResponseWriter, r *http.Request, *gorm.DB) { ... }
変数 *gorm.DB を解析するとエラーが発生するため、HttpRouter パッケージで同じことを行う方法。