Versions in this module Expand all Collapse all v2 v2.0.1 Jul 23, 2025 Changes in this version + const JoinTypeDB + const JoinTypeStr + func BcryptCheck(password, hash string) bool + func BcryptHash(password string) string + func CloneDB(db *gorm.DB) *gorm.DB + func UseAppState(router *RouterGroup) + type AppHandler interface + BeforeRun func(app *GinApp) + OnError func(app *GinApp, err error, traceback string) + OnRouteVersionChanged func(app *Context, routeVersion string, reqVersion string) + type AppState string + const StateMaintain + const StateRunning + type AppStateView struct + func (view *AppStateView) AddRoutes(router *RouterGroup) + func (view *AppStateView) GetState(c *Context) + func (view *AppStateView) SetState(c *Context) + func (view *AppStateView) StartMaintain(c *Context) + func (view *AppStateView) StopMaintain(c *Context) + type Claim struct + IsSuperuser bool + UserClaim any + func (c *Claim) Bind(dest any) error + type Context struct + App *GinApp + Route *Route + func NewContext(app *GinApp, ctx *gin.Context) *Context + func (c *Context) BindUserClaim(dest any) error + func (c *Context) Error(err string) + func (c *Context) Errorf(err string, args ...any) + func (c *Context) Fail(message string) + func (c *Context) FailWithData(message string, data any) + func (c *Context) Failf(message string, args ...any) + func (c *Context) File(filepath string, deleteAfterRespond bool) + func (c *Context) FileAttachment(filepath string, filename string, deleteAfterRespond bool) + func (c *Context) GetClaim() *Claim + func (c *Context) GetData(key string, defaultVal any) any + func (c *Context) GetRawData() ([]byte, error) + func (c *Context) MustGetClaim() *Claim + func (c *Context) ParamFloat32(key string, defaultValue float32) float32 + func (c *Context) ParamFloat64(key string, defaultValue float64) float64 + func (c *Context) ParamInt(key string, defaultValue int) int + func (c *Context) QueryInt(key string, defaultValue int64) int64 + func (c *Context) RawMap() map[string]any + func (c *Context) ShouldBind(obj any) map[string]any + func (c *Context) ShouldBindForm(key string, dest any) + func (c *Context) ShouldBindJSON(obj any) map[string]any + func (c *Context) ShouldBindQuery(obj interface{}) + func (c *Context) Success() + func (c *Context) SuccessWithData(data any) + type CronTaskInfo struct + AllowPause bool + AllowStop bool + CronExpression string + CronID cron.EntryID + Desc string + Enabled bool + Error string + Key string + Name string + State TaskState + TimeCost float64 + TimeEnd *time.Time + TimeStart *time.Time + Traceback string + func (info *CronTaskInfo) IsIdle() bool + type DB struct + PanicIfError bool + func Connect(config conf.DbConfig) *DB + func (db *DB) Clone() *DB + func (db *DB) Count() (int64, error) + func (db *DB) Create(value ...any) error + func (db *DB) CreateInBatches(value any, batchSize int) error + func (db *DB) Delete(value interface{}, conds ...interface{}) error + func (db *DB) Distinct(args ...interface{}) *DB + func (db *DB) Exec(sql string, value ...any) error + func (db *DB) Find(dest any, conds ...any) error + func (db *DB) FindOrPaginate(dest any, pi int, ps int) (any, error) + func (db *DB) First(dest any, conds ...any) error + func (db *DB) FirstAndInit(dest any, attrs ...any) error + func (db *DB) FirstOrCreate(dest any, attrs ...any) error + func (db *DB) FirstOrInit(dest any, attrs ...any) error + func (db *DB) Group(fields ...string) *DB + func (db *DB) Joins(query string, args ...interface{}) *DB + func (db *DB) Last(dest any, conds ...any) error + func (db *DB) Limit(limit int) *DB + func (db *DB) Model(value any) *DB + func (db *DB) NewGroup(fields ...string) *DB + func (db *DB) NewSelect(query interface{}, args ...interface{}) *DB + func (db *DB) Offset(offset int) *DB + func (db *DB) Omit(columns ...string) *DB + func (db *DB) Or(query interface{}, args ...interface{}) *DB + func (db *DB) Order(fields ...string) *DB + func (db *DB) Paginate(dest any, pi int, ps int) (*Pagination[any], error) + func (db *DB) PaginateScan(dest any, pi int, ps int) (*Pagination[any], error) + func (db *DB) Panic() *DB + func (db *DB) Preload(query string, args ...interface{}) *DB + func (db *DB) Raw(sql string, values ...interface{}) *DB + func (db *DB) RowsAffected() int64 + func (db *DB) Run(fc func(db *DB)) *DB + func (db *DB) Save(value any, omitFK bool) error + func (db *DB) Scan(dest any) error + func (db *DB) ScanOrPaginate(dest any, pi int, ps int) (any, error) + func (db *DB) Select(query interface{}, args ...interface{}) *DB + func (db *DB) Sum(query string) (float64, error) + func (db *DB) Table(name string) *DB + func (db *DB) Transaction(fc func(tx *DB) error) error + func (db *DB) Update(column string, value interface{}) error + func (db *DB) UpdateOrCreate(dest any, conds map[string]any, data map[string]any) error + func (db *DB) Updates(data any) error + func (db *DB) Where(query any, args ...any) *DB + type EventHandler func() + type GinApp struct + DB *DB + Directory string + JWT *JWT + Models []any + Tasks *TaskManager + Viper *viper.Viper + func Application(opts ...gin.OptionFunc) *GinApp + func (app *GinApp) BeforeRun(f EventHandler) + func (app *GinApp) BindConfig(key string, dest any) error + func (app *GinApp) GetConfig() *conf.AppConfig + func (app *GinApp) Group(relativePath string, handlers ...HandlerFunc) *RouterGroup + func (app *GinApp) InitEnv(env string) error + func (app *GinApp) LogDirectory() string + func (app *GinApp) MigrateDbModels() + func (app *GinApp) OnError(f EventHandler) + func (app *GinApp) RegisterCommand(command *cobra.Command) + func (app *GinApp) RegisterModels(models ...any) + func (app *GinApp) RegisterVariable(v Variable) + func (app *GinApp) Run(addr string) + func (app *GinApp) RunCommand(f func(cmdargs map[string]any)) + func (app *GinApp) RunFromCommand() + func (app *GinApp) SetResource(resource embed.FS) + func (app *GinApp) SetState(state AppState) + func (app *GinApp) StaticDirectory() string + func (app *GinApp) UseHandler(handler AppHandler) + type GormColumn struct + Column string + DefaultValue string + FieldName string + FieldType string + IsFKField bool + IsPrimaryKey bool + Size int + func AnalyzeGormTags(f reflect.StructField) *GormColumn + type HandlerFunc func(*Context) + func AllowIfMaintain() HandlerFunc + func MiddlewareJWT(config *conf.AppConfig) HandlerFunc + func MustBeSuperuser() HandlerFunc + type HttpMethod string + const HttpDELETE + const HttpGET + const HttpHEAD + const HttpOPTIONS + const HttpPATCH + const HttpPOST + const HttpPUT + type IAppTask interface + GetInfo func() *CronTaskInfo + Run func(handler *TaskHandler) error + UpdateInfo func(info CronTaskInfo) + type IRouteView interface + AddRoutes func(router *RouterGroup) + type JWT struct + func (j *JWT) MakeToken(payload any, isSuperuser bool) (string, error) + func (j *JWT) ParseToken(token string) (*Claim, error) + type LogView struct + func (view *LogView) RegisterRoutes(router *RouterGroup) + type Model struct + CreatedAt *time.Time + DeletedAt *time.Time + ID uint + UpdatedAt *time.Time + type Pagination struct + List T + PageIndex int + PageSize int + Total int64 + type QuerySet struct + func Q[T any](db *DB) *QuerySet[T] + func (qs *QuerySet[T]) Clone() *QuerySet[T] + func (qs *QuerySet[T]) Conds(conds map[string]any) *QuerySet[T] + func (qs *QuerySet[T]) Distinct(args ...interface{}) *QuerySet[T] + func (qs *QuerySet[T]) FindAll() ([]T, error) + func (qs *QuerySet[T]) FindOrPaginate2(pi int, ps int) (any, error) + func (qs *QuerySet[T]) ForEach(callback func(record T) error) error + func (qs *QuerySet[T]) GetFirst(conds ...any) (*T, error) + func (qs *QuerySet[T]) Group(fields ...string) *QuerySet[T] + func (qs *QuerySet[T]) Joins(query string, args ...interface{}) *QuerySet[T] + func (qs *QuerySet[T]) Limit(limit int) *QuerySet[T] + func (qs *QuerySet[T]) Offset(offset int) *QuerySet[T] + func (qs *QuerySet[T]) Omit(columns ...string) *QuerySet[T] + func (qs *QuerySet[T]) Or(query interface{}, args ...interface{}) *QuerySet[T] + func (qs *QuerySet[T]) Order(fields ...string) *QuerySet[T] + func (qs *QuerySet[T]) Paginate2(pi int, ps int) (*Pagination[[]T], error) + func (qs *QuerySet[T]) Panic() *QuerySet[T] + func (qs *QuerySet[T]) Preload(query string, args ...interface{}) *QuerySet[T] + func (qs *QuerySet[T]) Raw(sql string, values ...interface{}) *QuerySet[T] + func (qs *QuerySet[T]) Run(fc func(qs *QuerySet[T])) *QuerySet[T] + func (qs *QuerySet[T]) Select(query interface{}, args ...interface{}) *QuerySet[T] + func (qs *QuerySet[T]) Table(name string) *QuerySet[T] + func (qs *QuerySet[T]) Where(query any, args ...any) *QuerySet[T] + type Route struct + App *GinApp + RelativePath string + func (r *Route) AddInfo(info gx.M) *Route + func (r *Route) GetInfo(key string) any + func (r *Route) IsMaintainAllow() bool + func (r *Route) MaintainAllow() + func (r *Route) SetInfo(key string, value any) *Route + type RouterGroup struct + App *GinApp + RelativePath string + func (r *RouterGroup) AddViews(views ...IRouteView) + func (r *RouterGroup) Config(relativePath string, fc func(*RouterGroup)) *RouterGroup + func (r *RouterGroup) DELETE(relativePath string, handlers ...HandlerFunc) *Route + func (r *RouterGroup) GET(relativePath string, handlers ...HandlerFunc) *Route + func (r *RouterGroup) Group(relativePath string, handlers ...HandlerFunc) *RouterGroup + func (r *RouterGroup) HEAD(relativePath string, handlers ...HandlerFunc) *Route + func (r *RouterGroup) OPTIONS(relativePath string, handlers ...HandlerFunc) *Route + func (r *RouterGroup) PATCH(relativePath string, handlers ...HandlerFunc) *Route + func (r *RouterGroup) POST(relativePath string, handlers ...HandlerFunc) *Route + func (r *RouterGroup) PUT(relativePath string, handlers ...HandlerFunc) *Route + func (r *RouterGroup) UseMiddleware(middleware ...HandlerFunc) *RouterGroup + type TaskHandler struct + func NewTaskHandler() *TaskHandler + func (t *TaskHandler) OnPause(callback func()) + func (t *TaskHandler) OnResume(callback func()) + func (t *TaskHandler) OnStop(callback func()) + func (t *TaskHandler) Pause() + func (t *TaskHandler) Resume() + func (t *TaskHandler) Stop() + func (t *TaskHandler) Wait() + type TaskManager struct + func NewTaskManager() *TaskManager + func (m *TaskManager) AddTask(task IAppTask) (IAppTask, error) + func (m *TaskManager) PauseTask(task IAppTask) + func (m *TaskManager) RegisterRoutes(router *RouterGroup) + func (m *TaskManager) ResumeTask(task IAppTask) + func (m *TaskManager) RunTask(task IAppTask) error + func (m *TaskManager) StopTask(task IAppTask) error + func (m *TaskManager) UpdateTask(task IAppTask) + type TaskState string + const TaskStateDone + const TaskStateError + const TaskStatePaused + const TaskStatePending + const TaskStateRunning + const TaskStateStopped + type Variable struct + GetValue VariableFunc + Key string + Module string + Name string + type VariableFunc func(c *Context) any + type VariableView struct + func (view *VariableView) RegisterRoutes(router *RouterGroup) Other modules containing this package gitee.com/makitdone/gweb