toml - skynocover/Wiki-for-GoLang GitHub Wiki

Toml

import and Decode

import (
	"github.com/BurntSushi/toml"
)

if _, err := toml.DecodeFile(filePath, &Config); err != nil {
	panic(err)
}

defined

go

// Config set the global config
var Config struct {
	Setting struct {
		Version string `json:"version"`
		Listen  string `json:"listen"`
	} `json:"setting"`
	DB       map[string]dB       `json:"db"`
}

type dB struct {
	User     string `json:"user"`
	Password string `json:"password"`
	Host     string `json:"host"`
	Database string `json:"database"`
}

Toml


[setting]
    version="1.1.1"
    listen="8080"

[DB]
    [DB.dev]
    user="root"
    password="example"
    host="192.168.96.42"
    database="assets"

    [DB.beta]
    user="eric_wu"
    password="haut@20cen"
    host="192.168.6.166"
    database="assets"

    [DB.prod]
    user="eric_wu"
    password="cen$21haut"
    host="172.16.1.166"
    database="assets"