table

package
v0.6.2 Latest Latest
Warning

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

Go to latest
Published: Jul 31, 2025 License: MIT Imports: 26 Imported by: 3

Documentation

Index

Constants

View Source
const MODULE = "table"

Variables

View Source
var Path = "tables"

Functions

func ApiCount

func ApiCount(ctx *gin.Context)

func ApiCreate

func ApiCreate(ctx *gin.Context)

func ApiDelete

func ApiDelete(ctx *gin.Context)

func ApiDetail

func ApiDetail(ctx *gin.Context)

func ApiExport

func ApiExport(ctx *gin.Context)

func ApiImport

func ApiImport(ctx *gin.Context)

func ApiSearch

func ApiSearch(ctx *gin.Context)

func ApiTableCreate

func ApiTableCreate(ctx *gin.Context)

func ApiTableList

func ApiTableList(ctx *gin.Context)

func ApiTableReload

func ApiTableReload(ctx *gin.Context)

func ApiTableRemove

func ApiTableRemove(ctx *gin.Context)

func ApiTableRename

func ApiTableRename(ctx *gin.Context)

func ApiUpdate

func ApiUpdate(ctx *gin.Context)

func Error

func Error(ctx *gin.Context, err error)

func Fail

func Fail(ctx *gin.Context, err string)

func FormFiles

func FormFiles(ctx *gin.Context) (files []*multipart.FileHeader, err error)

func List

func List(ctx *gin.Context, data any, total int64)

func Load

func Load(path string) error

func OK

func OK(ctx *gin.Context, data any)

func Register

func Register(table *Table)

func RemoveHookValues added in v0.6.0

func RemoveHookValues(name string)

func Scan

func Scan(dir string) error

func SetHookValues added in v0.6.0

func SetHookValues(name string, value any)

func Startup

func Startup() error

func Sync

func Sync(tables []*Table) error

func TypeToSqlType

func TypeToSqlType(t string) (st schemas.SQLType)

Types

type Document

type Document map[string]any

type Field

type Field struct {
	Name       string `json:"name,omitempty"`
	Comment    string `json:"comment,omitempty"`
	Type       string `json:"type,omitempty"`
	Default    string `json:"default,omitempty"`
	NotNull    bool   `json:"not_null,omitempty"`
	Length     int64  `json:"length,omitempty"`
	Length2    int64  `json:"length2,omitempty"`
	PrimaryKey bool   `json:"primary_key,omitempty"`
	Increment  bool   `json:"increment,omitempty"`
	Indexed    bool   `json:"indexed,omitempty"`
	Created    bool   `json:"created,omitempty"`
	Updated    bool   `json:"updated,omitempty"`
}

func (*Field) Cast added in v0.6.0

func (f *Field) Cast(v any) (ret any, err error)

func (*Field) Condition added in v0.6.0

func (f *Field) Condition(val string) (cond builder.Cond, err error)

type Hook added in v0.6.0

type Hook struct {
	BeforeInsert func(doc Document) error
	AfterInsert  func(id any, doc Document) error
	BeforeUpdate func(id any, update Document) error
	AfterUpdate  func(id any, update Document, base Document) error
	BeforeDelete func(id any) error
	AfterDelete  func(id any, doc Document) error

	Scripts *HookScripts `json:"scripts,omitempty"`
}

func (*Hook) Compile added in v0.6.0

func (h *Hook) Compile() error

type HookScripts added in v0.6.0

type HookScripts struct {
	BeforeInsert string `json:"before_insert,omitempty"`
	AfterInsert  string `json:"after_insert,omitempty"`
	BeforeUpdate string `json:"before_update,omitempty"`
	AfterUpdate  string `json:"after_update,omitempty"`
	BeforeDelete string `json:"before_delete,omitempty"`
	AfterDelete  string `json:"after_delete,omitempty"`
}

type ReplyData

type ReplyData[T any] struct {
	Data  T      `json:"data"`
	Error string `json:"error,omitempty"`
}

type ReplyList

type ReplyList[T any] struct {
	Data  []T    `json:"data"`
	Total int64  `json:"total"`
	Error string `json:"error,omitempty"`
}

type Table

type Table struct {
	Name          string   `json:"name,omitempty"`
	Comment       string   `json:"comment,omitempty"`
	Fields        []*Field `json:"fields,omitempty"`
	DisableInsert bool     `json:"disable_insert,omitempty"`
	DisableUpdate bool     `json:"disable_update,omitempty"`
	DisableDelete bool     `json:"disable_delete,omitempty"`

	//原生钩子
	Hook
	// contains filtered or unexported fields
}

func Get

func Get(name string) (*Table, error)

func (*Table) Count

func (t *Table) Count(filter map[string]any) (cnt int64, err error)

func (*Table) Create

func (t *Table) Create() error

func (*Table) Delete

func (t *Table) Delete(filter map[string]any) (rows int64, err error)

func (*Table) DeleteById

func (t *Table) DeleteById(id any) (rows int64, err error)

func (*Table) Drop

func (t *Table) Drop() error

func (*Table) Field added in v0.6.0

func (t *Table) Field(name string) *Field

func (*Table) Find

func (t *Table) Find(filter map[string]any, fields []string, skip, limit int) (rows []map[string]any, err error)

func (*Table) Get

func (t *Table) Get(id any, fields []string) (Document, error)

func (*Table) Init added in v0.6.0

func (t *Table) Init() error

func (*Table) Insert

func (t *Table) Insert(values map[string]any) (id any, err error)

func (*Table) PrimaryKeys added in v0.6.0

func (t *Table) PrimaryKeys() []*Field

func (*Table) Schema

func (t *Table) Schema() *schemas.Table

func (*Table) Update

func (t *Table) Update(filter map[string]any, values map[string]any) (rows int64, err error)

func (*Table) UpdateById

func (t *Table) UpdateById(id any, values map[string]any) (rows int64, err error)

Jump to

Keyboard shortcuts

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