Skip to content

foxliu/structdefaults

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

structdefaults

通过tag来设置struct的默认值

useage:

go get -u github.com/foxliu/structdefaults@v0.2.0

example:

define struct

type LogConfig struct {
	Level      string   `json:"level,omitempty" default:"info"`
	Filename   string   `json:"filename,omitempty" default:"logs/app.log"`
	MaxSize    int      `json:"max_size,omitempty" default:"100"`
	MaxAge     int      `json:"max_age,omitempty" default:"5"`
	MaxBackups int      `json:"max_backups,omitempty" default:"5"`
	TestArry   []string `json:"test_array,omitempty" default:"[\"start\"]"`
}

use:

cfg := LogConfig{}
err := setDefaults.SetStructDefaults(&cfg)
log.Printf("Config: %+v", cfg)

About

通过tag来设置struct的默认值

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages