config

package
v1.2.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 2, 2020 License: Apache-2.0 Imports: 11 Imported by: 404

Documentation

Index

Constants

View Source
const (
	// EnvTest is a const value of test environment.
	EnvTest = "test"
	// EnvLocal is a const value of local environment.
	EnvLocal = "local"
	// EnvProd is a const value of production environment.
	EnvProd = "prod"

	// DriverMysql is a const value of mysql driver.
	DriverMysql = "mysql"
	// DriverSqlite is a const value of sqlite driver.
	DriverSqlite = "sqlite"
	// DriverPostgresql is a const value of postgresql driver.
	DriverPostgresql = "postgresql"
	// DriverMssql is a const value of mssql driver.
	DriverMssql = "mssql"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// An map supports multi database connection. The first
	// element of Databases is the default connection. See the
	// file connection.go.
	Databases DatabaseList `json:"database",yaml:"database",ini:"database"`

	// The cookie domain used in the auth modules. see
	// the session.go.
	Domain string `json:"domain",yaml:"domain",ini:"domain"`

	// Used to set as the localize language which show in the
	// interface.
	Language string `json:"language",yaml:"language",ini:"language"`

	// The global url prefix.
	UrlPrefix string `json:"prefix",yaml:"prefix",ini:"prefix"`

	// The theme name of template.
	Theme string `json:"theme",yaml:"theme",ini:"theme"`

	// The path where files will be stored into.
	Store Store `json:"store",yaml:"store",ini:"store"`

	// The title of web page.
	Title string `json:"title",yaml:"title",ini:"title"`

	Logo template.HTML `json:"logo",yaml:"logo",ini:"logo"`

	MiniLogo template.HTML `json:"mini_logo",yaml:"mini_logo",ini:"mini_logo"`

	// The url redirect to after login.
	IndexUrl string `json:"index",yaml:"index",ini:"index"`

	// Debug mode
	Debug bool `json:"debug",yaml:"debug",ini:"debug"`

	// Env is the environment,which maybe local,test,prod.
	Env string `json:"env",yaml:"env",ini:"env"`

	// Info log path.
	InfoLogPath string `json:"info_log",yaml:"info_log",ini:"info_log"`

	// Error log path.
	ErrorLogPath string `json:"error_log",yaml:"error_log",ini:"error_log"`

	// Access log path.
	AccessLogPath string `json:"access_log",yaml:"access_log",ini:"access_log"`

	// Sql operator record log switch.
	SqlLog bool `json:"sql_log",yaml:"sql_log",ini:"sql_log"`

	AccessLogOff bool `json:"access_log_off",yaml:"access_log_off",ini:"access_log_off"`
	InfoLogOff   bool `json:"info_log_off",yaml:"info_log_off",ini:"info_log_off"`
	ErrorLogOff  bool `json:"error_log_off",yaml:"error_log_off",ini:"error_log_off"`

	// Color scheme.
	ColorScheme string `json:"color_scheme",yaml:"color_scheme",ini:"color_scheme"`

	// Session valid time duration,units are seconds.
	SessionLifeTime int `json:"session_life_time",yaml:"session_life_time",ini:"session_life_time"`

	// Assets visit link.
	AssetUrl string `json:"asset_url",yaml:"asset_url",ini:"asset_url"`

	// File upload engine,default "local"
	FileUploadEngine FileUploadEngine `json:"file_upload_engine",yaml:"file_upload_engine",ini:"file_upload_engine"`

	// Custom html in the tag head.
	CustomHeadHtml template.HTML `json:"custom_head_html",yaml:"custom_head_html",ini:"custom_head_html"`

	// Custom html after body.
	CustomFootHtml template.HTML `json:"custom_foot_html",yaml:"custom_foot_html",ini:"custom_foot_html"`

	// Login page title
	LoginTitle string `json:"login_title",yaml:"login_title",ini:"login_title"`

	LoginLogo template.HTML `json:"login_logo",yaml:"login_logo",ini:"login_logo"`

	// Auth user table
	AuthUserTable string `json:"auth_user_table",yaml:"auth_user_table",ini:"auth_user_table"`

	// Extra config info
	Extra map[string]interface{} `json:"extra",yaml:"extra",ini:"extra"`

	// Page animation
	Animation PageAnimation `json:"animation",yaml:"animation",ini:"animation"`
	// contains filtered or unexported fields
}

Config type is the global config of goAdmin. It will be initialized in the engine.

func Get

func Get() Config

Get gets the config.

func ReadFromINI added in v1.1.4

func ReadFromINI(path string) Config

ReadFromINI read the Config from a INI file.

func ReadFromJson added in v1.0.0

func ReadFromJson(path string) Config

ReadFromJson read the Config from a JSON file.

func ReadFromYaml added in v1.1.4

func ReadFromYaml(path string) Config

ReadFromYaml read the Config from a YAML file.

func Set

func Set(cfg Config) Config

Set sets the config.

func (Config) AssertPrefix added in v1.1.4

func (c Config) AssertPrefix() string

AssertPrefix return the prefix of assert.

func (Config) GetIndexURL added in v1.0.8

func (c Config) GetIndexURL() string

GetIndexURL get the index url with prefix.

func (Config) Index added in v1.0.0

func (c Config) Index() string

Index return the index url without prefix.

func (Config) IsLocalEnvironment added in v1.0.0

func (c Config) IsLocalEnvironment() bool

IsLocalEnvironment check the environment if it is local.

func (Config) IsProductionEnvironment added in v1.0.0

func (c Config) IsProductionEnvironment() bool

IsProductionEnvironment check the environment if it is production.

func (Config) IsTestEnvironment added in v1.0.0

func (c Config) IsTestEnvironment() bool

IsTestEnvironment check the environment if it is test.

func (Config) Prefix added in v1.0.0

func (c Config) Prefix() string

Prefix return the prefix.

func (Config) PrefixFixSlash added in v1.0.0

func (c Config) PrefixFixSlash() string

PrefixFixSlash return the prefix fix the slash error.

func (Config) URLRemovePrefix added in v1.0.8

func (c Config) URLRemovePrefix(url string) string

URLRemovePrefix remove prefix from the given url.

func (Config) Url added in v1.0.0

func (c Config) Url(suffix string) string

Url get url with the given suffix.

type Database

type Database struct {
	Host       string `json:"host",yaml:"host",ini:"host"`
	Port       string `json:"port",yaml:"port",ini:"port"`
	User       string `json:"user",yaml:"user",ini:"user"`
	Pwd        string `json:"pwd",yaml:"pwd",ini:"pwd"`
	Name       string `json:"name",yaml:"name",ini:"name"`
	MaxIdleCon int    `json:"max_idle_con",yaml:"max_idle_con",ini:"max_idle_con"`
	MaxOpenCon int    `json:"max_open_con",yaml:"max_open_con",ini:"max_open_con"`
	Driver     string `json:"driver",yaml:"driver",ini:"driver"`
	File       string `json:"file",yaml:"file",ini:"file"`
	Dsn        string `json:"dsn",yaml:"dsn",ini:"dsn"`
}

Database is a type of database connection config.

Because a little difference of different database driver. The Config has multiple options but may not be used. Such as the sqlite driver only use the File option which can be ignored when the driver is mysql.

If the Dsn is configured, when driver is mysql/postgresql/ mssql, the other configurations will be ignored, except for MaxIdleCon and MaxOpenCon.

type DatabaseList added in v1.0.0

type DatabaseList map[string]Database

DatabaseList is a map of Database.

func (DatabaseList) Add added in v1.0.0

func (d DatabaseList) Add(key string, db Database)

Add add a Database to the DatabaseList.

func (DatabaseList) GetDefault added in v1.0.0

func (d DatabaseList) GetDefault() Database

GetDefault get the default Database.

func (DatabaseList) GroupByDriver added in v1.0.0

func (d DatabaseList) GroupByDriver() map[string]DatabaseList

GroupByDriver group the Databases with the drivers.

type FileUploadEngine added in v1.0.0

type FileUploadEngine struct {
	Name   string
	Config map[string]interface{}
}

FileUploadEngine is a file upload engine.

type PageAnimation added in v1.2.4

type PageAnimation struct {
	Type     string  `json:"type",yaml:"type",ini:"type"`
	Duration float32 `json:"duration",yaml:"duration",ini:"duration"`
	Delay    float32 `json:"delay",yaml:"delay",ini:"delay"`
}

type Store

type Store struct {
	Path   string
	Prefix string
}

Store is the file store config. Path is the local store path. and prefix is the url prefix used to visit it.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL