Использую 
https://github.com/jinzhu/gorm
Вот код 
func templateAuth(w http.ResponseWriter, r *http.Request) {
	vars := mux.Vars(r)
	row := db.Table("use_api").Where("api_key  = ?", vars["keyApi"]).Select("salt").Row()
	h := md5.New()
	io.WriteString(h, vars["keyApi"])
	io.WriteString(h, row.Scan(&salt))
	if h.Sum(nil) == vars["hash"] {
		p := map[string]string{
			"title":  "Авторизация",
			"domen":  "localhost",
			"keyApi": vars["keyApi"],
			"hash":   vars["hash"],
		}
		TemplateHtml("login.html", p, w)
	} else {
		p := map[string]string{
			"err":   "Неверный хеш",
			"domen": "localhost",
		}
		TemplateHtml("err.html", p, w)
	}
}
Ошибки 
# command-line-arguments
./main.go:33: undefined: salt
./main.go:33: cannot use row.Scan(&salt) (type error) as type string in argument to io.WriteString
./main.go:35: invalid operation: h.Sum(nil) == vars["hash"] (mismatched types []byte and string)
Как я понял то это я не получил данные ячейки, а получил хз что. Зарание спасибо.
Вот скрипт полностью с нормальной подсветкой