func (s *NewAssistant) Ctx() gcore.Ctx {
	return gcore.ProviderCtx()()
}
Ctx creates an new object of gcore.Ctx
package gmc
import (
	"fmt"
	"github.com/snail007/gmc/core"
	"github.com/snail007/gmc/module/cache"
	gdb "github.com/snail007/gmc/module/db"
	gi18n "github.com/snail007/gmc/module/i18n"
	gcaptcha "github.com/snail007/gmc/util/captcha"
	gmap "github.com/snail007/gmc/util/map"
)
var (
	New = &NewAssistant{}
	DB = &DBAssistant{}
	Cache = &CacheAssistant{}
	I18n = &I18nAssistant{}
	Err = &ErrorAssistant{}
)
type NewAssistant struct {
}
func (s *NewAssistant) Config() gcore.Config {
	return gcore.ProviderConfig()()
}
func (s *NewAssistant) ConfigFile(file string) (cfg gcore.Config, err error) {
	v := s.Config()
	v.SetConfigFile(file)
	err = v.ReadInConfig()
	if err != nil {
		return
	}
	cfg = v
	return
}