Ich habe meine Haare zu ziehen ist, warum dieser Code führt den Fehler:Zu viele Argumente zurück Fehler
package util
import (
"path/filepath"
"sync"
"github.com/go-ini/ini"
)
// ConfigMap is map for config values
type ConfigMap struct {
LogPath string
PublicDir string
SessionName string
Debug bool
DBUsersHost string
DBUsersName string
DBUsersUsername string
DBUsersPassword string
}
var once sync.Once
// Config loads and return config object
func Config() (*ConfigMap, error) {
once.Do(func() {
// Find the location of the app.conf file
configFilePath, err := filepath.Abs("../build/app.conf")
if err != nil {
return nil, err
}
// Load app.conf
cfg, err := ini.Load(configFilePath)
if err != nil {
return nil, err
}
// Get app mode
mode, err := AppMode()
if err != nil {
return nil, err
}
c := &ConfigMap{}
err = cfg.Section(mode).MapTo(c)
if err != nil {
return nil, err
}
return c, err
})
}
Wie Sie sehen können, die Paarung genau richtig ist. Jeder Rückgabecode gibt &ConfigMap
und err
zurück und die Funktionssignatur stimmt damit überein. Was vermisse ich?