Documentation
¶
Index ¶
- Constants
- Variables
- func Commands(command et.Json) (et.Items, error)
- func EventDeleteDefault(model *Model, before et.Json, after et.Json) error
- func EventHistoryDefault(model *Model, before et.Json, after et.Json) error
- func EventInsertDefault(model *Model, before et.Json, after et.Json) error
- func EventUpdateDefault(model *Model, before et.Json, after et.Json) error
- func Name(name string) string
- func NewVmj(model *Model) *goja.Runtime
- func Query(query et.Json) (et.Items, error)
- func Register(name string, driver func() Driver)
- func RowsToItem(rows *sql.Rows) et.Item
- func RowsToItems(rows *sql.Rows) et.Items
- func SQLDDL(sql string, args ...any) string
- func SQLParse(sql string, args ...any) string
- func SQLQuote(sql string) string
- func SourceToItem(source string, rows *sql.Rows) et.Item
- func SourceToItems(source string, rows *sql.Rows) et.Items
- func TableName(schema, name string) string
- func UpsertDictionary(w http.ResponseWriter, r *http.Request)
- type Adapter
- type Agregation
- type Column
- type ColumnField
- type Command
- func (s *Command) And(val interface{}) *QlFilter
- func (s *Command) Data(fields ...string) *Ql
- func (s *Command) Debug() *Command
- func (s *Command) Describe() et.Json
- func (s *Command) Exec() (et.Items, error)
- func (s *Command) GetReturn(name string) *QlSelect
- func (s *Command) One() (et.Item, error)
- func (s *Command) Or(val interface{}) *QlFilter
- func (s *Command) Select(fields ...string) *Ql
- func (s *Command) Where(val interface{}) *Command
- type Concat
- type Connector
- type Context
- type DB
- func (s *DB) ChangePassword(username, password, confirmation string) error
- func (s *DB) Command(command *Command) (et.Items, error)
- func (s *DB) Conected(params et.Json) error
- func (s *DB) Count(ql *Ql) (int, error)
- func (s *DB) CreateCore() error
- func (s *DB) CreateSchema(name string) error
- func (s *DB) CreateUser(username, password, confirmation string) error
- func (s *DB) CurrentSerie(tag string) int64
- func (s *DB) Data(source, sql string, params ...any) (et.Items, error)
- func (s *DB) DeleteKey(key string) error
- func (s *DB) DeleteUser(username string) error
- func (s *DB) Describe() et.Json
- func (s *DB) Disconected() error
- func (s *DB) DropModel(model *Model) error
- func (s *DB) DropSchema(name string) error
- func (s *DB) Exec(sql string, params ...any) error
- func (s *DB) FindKeys(search string, page, rows int) (et.List, error)
- func (s *DB) GetKey(key string) (et.KeyValue, error)
- func (s *DB) GetSerie(tag string) int64
- func (s *DB) GrantPrivileges(username, dbName string) error
- func (s *DB) LoadByTable(model *Model) error
- func (s *DB) LoadModel(model *Model) error
- func (s *DB) NextCode(tag, format string) string
- func (s *DB) Query(sql string, params ...any) (et.Items, error)
- func (s *DB) Select(ql *Ql) (et.Items, error)
- func (s *DB) SetKey(key string, value []byte) error
- func (s *DB) SetMain(params et.Json) error
- func (s *DB) SetSerie(tag string, val int) int64
- type Detail
- type Dictionary
- func (s *Dictionary) DefineAtribute(name string, typeData TypeData, def interface{}) *Column
- func (s *Dictionary) DefineDictionary(key, value string) *Dictionary
- func (s *Dictionary) DefineList(name string, typeData TypeData, values []interface{}, def interface{}) *Column
- func (s *Dictionary) Describe() et.Json
- type Driver
- type Event
- type Field
- type FilterTo
- type Flow
- type FullText
- type FuncGenerated
- type Function
- type HandlerListener
- type Index
- type Message
- type Model
- func (s *Model) Bulk(data []et.Json) *Command
- func (s *Model) Command(params et.Json) (et.Items, error)
- func (s *Model) Debug() *Model
- func (s *Model) DefineAtribute(name string, typeData TypeData) *Column
- func (s *Model) DefineColumn(name string, typeData TypeData) *Column
- func (s *Model) DefineCreatedAtField() *Column
- func (s *Model) DefineDetail(name, fkn string, version int) *Model
- func (s *Model) DefineDictionary(key, value string) *Dictionary
- func (s *Model) DefineEvent(tp TypeEvent, event Event)
- func (s *Model) DefineFullText(language string, fields []string) *Column
- func (s *Model) DefineFunction(name string, tp TypeFunction, definition string) *Function
- func (s *Model) DefineGenerated(name string, f FuncGenerated)
- func (s *Model) DefineHidden(colums ...string) *Model
- func (s *Model) DefineHistory(n int64, fkn string, version int) error
- func (s *Model) DefineIdxColumn(name string, typeData TypeData, idx int) *Column
- func (s *Model) DefineIndex(sort bool, colums ...string) *Model
- func (s *Model) DefineIndexField() *Column
- func (s *Model) DefineKey(colums ...string) *Model
- func (s *Model) DefineKeyField() *Column
- func (s *Model) DefineLog(n int64)
- func (s *Model) DefineManyToOne(to *Model, fkn string) *Model
- func (s *Model) DefineOneToMany(to *Model, fkn string) *Model
- func (s *Model) DefinePrimaryKey(name string) *Column
- func (s *Model) DefineProjectField() *Column
- func (s *Model) DefineRelation(name string, fkn, tag string)
- func (s *Model) DefineRequired(requireds ...string) *Model
- func (s *Model) DefineRollup(name string, fkn, tag string)
- func (s *Model) DefineSourceField(name string) *Column
- func (s *Model) DefineStateField() *Column
- func (s *Model) DefineSystemKeyField() *Column
- func (s *Model) DefineUnique(colums ...string) *Model
- func (s *Model) DefineUpdatedAtField() *Column
- func (s *Model) Delete() *Command
- func (s *Model) Describe() et.Json
- func (s *Model) Drop()
- func (s *Model) FullText(fields ...string) FullText
- func (s *Model) GenId(id string) string
- func (s *Model) GenKey(id string) string
- func (s *Model) GetColumn(name string) *Column
- func (s *Model) GetColumns(names ...string) []*Column
- func (s *Model) GetField(name string, isCreated bool) *Field
- func (s *Model) GetKeys() []*Column
- func (s *Model) GetSerie() int64
- func (s *Model) Init() error
- func (s *Model) Insert(data et.Json) *Command
- func (s *Model) Load(data []byte) error
- func (s *Model) LoadByTable() error
- func (s *Model) Low() string
- func (s *Model) MakeCollection() *Model
- func (s *Model) New(data et.Json) et.Json
- func (s *Model) Object(id string) *dt.Object
- func (s *Model) ObjectUp(id string, item et.Item) *dt.Object
- func (s *Model) OnListener(channels []string, listener HandlerListener)
- func (s *Model) Serialized() ([]byte, error)
- func (s *Model) SetField(name string, isCreated bool) *Field
- func (s *Model) Undo(key string, index int64) *Command
- func (s *Model) Up() string
- func (s *Model) Update(data et.Json) *Command
- func (s *Model) Where(val interface{}) *Ql
- type Operator
- type Ql
- func (s *Ql) All() (et.Items, error)
- func (s *Ql) And(val interface{}) *QlFilter
- func (s *Ql) Avg(field string) *Ql
- func (s *Ql) Count(field string) *Ql
- func (s *Ql) Data(fields ...string) *Ql
- func (s *Ql) Debug() *Ql
- func (s *Ql) Describe() et.Json
- func (s *Ql) Exec() (et.Items, error)
- func (s *Ql) First(n int) (et.Items, error)
- func (s *Ql) FullJoin(m *Model) *QlJoin
- func (s *Ql) GetAgregation(name string) *Field
- func (s *Ql) GetDetails(data et.Json) et.Json
- func (s *Ql) GetField(name string, isCreated bool) *Field
- func (s *Ql) GetSelect(name string) *QlSelect
- func (s *Ql) GroupBy(fields ...string) *Ql
- func (s *Ql) Having(field string) *QlHaving
- func (s *Ql) Join(m *Model) *QlJoin
- func (s *Ql) Last(n int) (et.Items, error)
- func (s *Ql) LeftJoin(m *Model) *QlJoin
- func (s *Ql) List(page, rows int) (et.List, error)
- func (s *Ql) Max(field string) *Ql
- func (s *Ql) Min(field string) *Ql
- func (s *Ql) One() (et.Item, error)
- func (s *Ql) Or(val interface{}) *QlFilter
- func (s *Ql) OrderBy(sorted bool, columns ...string) *Ql
- func (s *Ql) OrderByAsc(columns ...string) *Ql
- func (s *Ql) OrderByDesc(columns ...string) *Ql
- func (s *Ql) Page(val int) *Ql
- func (s *Ql) Query(params et.Json) (et.Items, error)
- func (s *Ql) RightJoin(m *Model) *QlJoin
- func (s *Ql) Rows(val int) (et.Items, error)
- func (s *Ql) Select(fields ...string) *Ql
- func (s *Ql) Sum(field string) *Ql
- func (s *Ql) Where(val interface{}) *Ql
- type QlFilter
- func (s *QlFilter) AddValue(val interface{}) FilterTo
- func (s *QlFilter) All() (et.Items, error)
- func (s *QlFilter) Between(val interface{}) FilterTo
- func (s *QlFilter) Eq(val interface{}) FilterTo
- func (s *QlFilter) First(n int) (et.Items, error)
- func (s *QlFilter) In(val ...any) FilterTo
- func (s *QlFilter) IsNull() *QlFilter
- func (s *QlFilter) Last(n int) (et.Items, error)
- func (s *QlFilter) Less(val interface{}) FilterTo
- func (s *QlFilter) LessEq(val interface{}) FilterTo
- func (s *QlFilter) Like(val interface{}) FilterTo
- func (s *QlFilter) List(page, rows int) (et.List, error)
- func (s *QlFilter) More(val interface{}) FilterTo
- func (s *QlFilter) MoreEq(val interface{}) FilterTo
- func (s *QlFilter) Neg(val interface{}) FilterTo
- func (s *QlFilter) NotNull() *QlFilter
- func (s *QlFilter) One() (et.Item, error)
- func (s *QlFilter) Page(val int) *Ql
- func (s *QlFilter) Query(params et.Json) (et.Items, error)
- func (s *QlFilter) Rows(val int) (et.Items, error)
- func (s *QlFilter) Search(language string, val interface{}) FilterTo
- type QlFrom
- type QlHaving
- type QlJoin
- func (s *QlJoin) And(val interface{}) *QlFilter
- func (s *QlJoin) Data(fields ...string) *Ql
- func (s *QlJoin) Exec() (et.Items, error)
- func (s *QlJoin) On(field string) *QlFilter
- func (s *QlJoin) One() (et.Item, error)
- func (s *QlJoin) Or(val interface{}) *QlFilter
- func (s *QlJoin) Select(fields ...string) *Ql
- type QlOrder
- type QlSelect
- type QlWhere
- type RID
- type Reference
- type Relation
- type Schema
- type Step
- type TypeAgregation
- type TypeColumn
- type TypeCommand
- type TypeData
- type TypeEvent
- type TypeFunction
- type TypeJoin
- type TypeRelation
- type TypeSelect
- type UndoRecord
- type Value
Constants ¶
const ( INDEX = "index" SOURCE = "source" PROJECT = "project" CREATED_AT = "created_at" UPDATED_AT = "update_at" STATUS = "status" KEY = "id" SYSID = "jdbid" CREATED_TO = "created_to" UPDATED_TO = "updated_to" FULLTEXT = "fulltext" HISTORY_INDEX = "history_index" )
const ( MSG_DRIVER_NOT_FOUND = "Driver not found (%s)" MSG_DRIVER_NOT_DEFINED = "Driver not defined" MSS_PARAM_REQUIRED = "Parámetro requerido (%s)" MSG_DATABASE_NOT_FOUND = "Database not found" MSG_DATABASE_IS_REQUIRED = "Database is required" MSG_QUERY_FAILED = "Query failed: %s\nSQL: %s" MSG_MODEL_NOT_FOUND = "Model not found (%s)" MSG_QUERY_EMPTY = "Query is empty" MSG_QUERY_FROM_REQUIRED = "Query 'from' is required" MSG_SYSTEMKEYFIELD_NOT_FOUND = "SystemKeyField not found" MSG_NOT_DATA = "No data" MSG_NOT_INSERT_DATA = "No insert data" MSG_NOT_UPDATE_DATA = "No update data" MSG_NOT_DELETE_DATA = "No delete data" MSG_KEY_NOT_FOUND = "Key not found" MSG_HISTORY_NOT_DEFINED = "History not defined" MSG_HISTORY_NOT_FOUND = "History not found" MSG_UNDO_NOT_DEFINED = "Undo record not defined" )
Variables ¶
var ( Postgres = "postgres" Josefine = "josefine" )
var JDBS []*DB = []*DB{}
Functions ¶
func EventDeleteDefault ¶ added in v1.0.5
func EventHistoryDefault ¶ added in v1.0.5
func EventInsertDefault ¶ added in v1.0.5
func EventUpdateDefault ¶ added in v1.0.5
func RowsToItem ¶
* * RowsToItem return a item from a sql rows * @param rows *sql.Rows * @return et.Item *
func RowsToItems ¶
* * RowsToItems return a items from a sql rows * @param rows *sql.Rows * @return et.Items *
func SQLDDL ¶
* * SQLDDL return a sql string with the args * @param sql string * @param args ...any * @return string *
func SQLParse ¶
* * SQLParse return a sql string with the args * @param sql string * @param args ...any * @return string *
func SourceToItem ¶
* * SourceToItem return a item from a sql rows and source field * @param source string * @param rows *sql.Rows * @return et.Items *
func SourceToItems ¶ added in v1.0.5
* * SourceToItems return a items from a sql rows and source field * @param source string * @param rows *sql.Rows * @return et.Items *
func UpsertDictionary ¶ added in v1.0.5
func UpsertDictionary(w http.ResponseWriter, r *http.Request)
* * UpsertDictionary * @param w http.ResponseWriter * @param r *http.Request *
Types ¶
type Agregation ¶
type Agregation struct {
Agregation string
// contains filtered or unexported fields
}
type Column ¶
type Column struct {
Model *Model `json:"-"`
Name string `json:"name"`
Field string `json:"field"`
Description string `json:"description"`
Table string `json:"table"`
TypeColumn TypeColumn `json:"type_column"`
TypeData TypeData `json:"type_data"`
Default interface{} `json:"default"`
Max float64 `json:"max"`
Min float64 `json:"min"`
Hidden bool `json:"hidden"`
FullText []string `json:"columns"`
Detail *Detail `json:"detail"`
FuncGenerated FuncGenerated `json:"-"`
Limit int `json:"limit"`
Language string `json:"language"`
Values []interface{} `json:"values"`
}
func (*Column) DefaultQuote ¶
func (s *Column) DefaultQuote() interface{}
* * DefaultQuote * @return interface{} *
func (*Column) DefaultValue ¶
func (s *Column) DefaultValue() interface{}
* * DefaultValue * @return interface{} *
type ColumnField ¶
type ColumnField string
var ( IndexField ColumnField = INDEX SourceField ColumnField = SOURCE ProjectField ColumnField = PROJECT CreatedAtField ColumnField = CREATED_AT UpdatedAtField ColumnField = UPDATED_AT StateField ColumnField = STATUS KeyField ColumnField = KEY SystemKeyField ColumnField = SYSID CreatedToField ColumnField = CREATED_TO UpdatedToField ColumnField = UPDATED_TO FullTextField ColumnField = FULLTEXT )
func (ColumnField) TypeData ¶
func (s ColumnField) TypeData() TypeData
type Command ¶
type Command struct {
*QlFilter
Db *DB
TypeSelect TypeSelect `json:"type_select"`
From *QlFrom
Command TypeCommand
Origin []et.Json
Values []*Value
Undo *UndoRecord
Sql string
Source string
Result et.Items
}
func NewCommand ¶
func NewCommand(model *Model, data []et.Json, command TypeCommand) *Command
* * NewCommand * @param model *Model * @param data []et.Json * @param command TypeCommand * @return *Command *
func (*Command) GetReturn ¶ added in v1.0.5
* * GetReturn * @param name string * @return *QlSelect *
type Context ¶ added in v1.0.5
type Context struct {
Ok bool `json:"ok"`
Message Message `json:"message"`
Data interface{} `json:"data"`
}
func NewContext ¶ added in v1.0.5
func NewContext(data interface{}) *Context
* * NewContext * @param data interface{} * @return *Context *
type DB ¶
type DB struct {
CreatedAt time.Time `json:"created_date"`
UpdateAt time.Time `json:"update_date"`
Id string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Schemas map[string]*Schema `json:"schemas"`
UseCore bool `json:"use_core"`
Node int64 `json:"node"`
// contains filtered or unexported fields
}
func NewDatabase ¶
* * NewDatabase * @param driver string * @return *DB *
func (*DB) ChangePassword ¶
* * ChangePassword * @return error *
func (*DB) CreateCore ¶ added in v1.0.4
* * CreateCore * @return error *
func (*DB) CreateSchema ¶ added in v1.0.3
* * CreateSchema * @param name string * @return error *
func (*DB) CreateUser ¶
* * CreateUser * @return error *
func (*DB) CurrentSerie ¶
* * CurrentSerie * @param tag string * @return int64 *
func (*DB) Data ¶ added in v1.0.5
* * Data * @param source string * @param sql string * @param params ...any * @return et.Item, error *
func (*DB) DeleteUser ¶
* * DeleteUser * @return error *
func (*DB) DropSchema ¶
* * DropSchema * @param name string * @return error *
func (*DB) Exec ¶ added in v1.0.3
* * Exec * @param sql string * @param params ...any * @return error *
func (*DB) FindKeys ¶ added in v1.0.5
* * FindKeys * @param search string * @param page int * @param rows int * @return et.List, error *
func (*DB) GrantPrivileges ¶
* * GrantPrivileges * @return error *
func (*DB) LoadByTable ¶ added in v1.0.5
* * LoadByTable * @param model *Model * @return error *
func (*DB) NextCode ¶ added in v1.0.3
* * NextCode * @param tag string * @param format string "%08v" "PREFIX-%08v-SUFFIX" * @return string *
func (*DB) SetKey ¶ added in v1.0.5
* * SetKey * @param key string * @param value value []byte * @return error *
type Dictionary ¶ added in v1.0.3
type Dictionary struct {
Column *Column
Key string
Value interface{}
Columns []*Column
Dictionaries map[string][]*Dictionary
}
func NewDictionary ¶ added in v1.0.3
func NewDictionary(model *Model, key string, value interface{}) *Dictionary
* * NewDictionary * @param key string * @param value interface{} * @return *Dictionary *
func (*Dictionary) DefineAtribute ¶ added in v1.0.3
func (s *Dictionary) DefineAtribute(name string, typeData TypeData, def interface{}) *Column
* * DefineAtribute * @param name string * @param typeData TypeData * @param def interface{} * @return *Model *
func (*Dictionary) DefineDictionary ¶ added in v1.0.5
func (s *Dictionary) DefineDictionary(key, value string) *Dictionary
* * DefineDictionary * @param name string * @param key string * @param value interface{} * @return *Dictionary *
func (*Dictionary) DefineList ¶ added in v1.0.5
func (s *Dictionary) DefineList(name string, typeData TypeData, values []interface{}, def interface{}) *Column
* * DefineList * @param name string * @param typeData TypeData * @param def interface{} * @return *Model *
func (*Dictionary) Describe ¶ added in v1.0.5
func (s *Dictionary) Describe() et.Json
* * Describe * @return et.Json *
type Driver ¶
type Driver interface {
Name() string
Connect(params et.Json) error
Disconnect() error
SetMain(params et.Json) error
// Database
CreateDatabase(name string) error
DropDatabase(name string) error
// Core
CreateCore() error
// User
GrantPrivileges(username, dbName string) error
CreateUser(username, password, confirmation string) error
ChangePassword(username, password, confirmation string) error
DeleteUser(username string) error
// Schema
CreateSchema(name string) error
DropSchema(name string) error
// Model
LoadModel(model *Model) error
LoadByTable(model *Model) error
DropModel(model *Model) error
// Query
Exec(sql string, params ...any) error
Query(sql string, params ...any) (et.Items, error)
Data(source, sql string, params ...any) (et.Items, error)
Select(ql *Ql) (et.Items, error)
Count(ql *Ql) (int, error)
// Command
Command(command *Command) (et.Items, error)
// Series
GetSerie(tag string) int64
NextCode(tag, prefix string) string
SetSerie(tag string, val int) int64
CurrentSerie(tag string) int64
// Key Value
SetKey(key string, value []byte) error
GetKey(key string) (et.KeyValue, error)
DeleteKey(key string) error
FindKeys(search string, page, rows int) (et.List, error)
}
type Field ¶
type Field struct {
Owner interface{}
Column *Column
Schema string
Table string
As string
Field string
Name string
Atrib string
Agregation TypeAgregation
Alias string
Value interface{}
}
func GetField ¶ added in v1.0.5
* * GetField * @param name string, isCreated bool * @return *Field *
func (*Field) TableField ¶ added in v1.0.5
* * TableField * @return string *
type Flow ¶ added in v1.0.5
type Flow struct {
Id string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Steps []*Step
}
type FuncGenerated ¶ added in v1.0.5
type Function ¶ added in v0.0.1
type Function struct {
Id string
Name string
Description string
TypeFunction TypeFunction
Definition string
}
func NewFunction ¶ added in v1.0.3
func NewFunction(name string, tp TypeFunction) *Function
* * NewFunction * @param name string * @param tp TypeFunction * @return *Function *
type HandlerListener ¶ added in v1.0.4
type Model ¶
type Model struct {
Db *DB `json:"-"`
Schema *Schema `json:"-"`
CreatedAt time.Time `json:"created_date"`
UpdateAt time.Time `json:"update_date"`
Name string `json:"name"`
Table string `json:"table"`
Description string `json:"description"`
Columns []*Column `json:"columns"`
Indices map[string]*Index `json:"indices"`
Uniques map[string]*Index `json:"uniques"`
Keys map[string]*Column `json:"keys"`
ForeignKeys map[string]*Reference `json:"foreign_keys"`
References []*Reference `json:"references"`
Relations []*Relation `json:"relations"`
Dictionaries map[string][]*Dictionary `json:"dictionaries"`
ColRequired map[string]bool `json:"col_required"`
CreatedAtField *Column `json:"created_at_field"`
UpdatedAtField *Column `json:"updated_at_field"`
KeyField *Column `json:"key_field"`
Source string `json:"source"`
SourceField *Column `json:"source_field"`
SystemKeyField *Column `json:"system_key_field"`
StateField *Column `json:"state_field"`
IndexField *Column `json:"index_field"`
FullTextField *Column `json:"full_text_field"`
EventsInsert []Event `json:"-"`
EventsUpdate []Event `json:"-"`
EventsDelete []Event `json:"-"`
Details map[string]*Detail `json:"-"`
Functions map[string]*Function `json:"-"`
Integrity bool `json:"integrity"`
Log int64 `json:"log"`
History *Model `json:"-"`
HistoryLimit int64 `json:"history_limit"`
Vmj *goja.Runtime `json:"-"`
Version int `json:"version"`
Show bool `json:"-"`
}
func (*Model) Command ¶ added in v1.0.5
* * Command * @param params et.Json * @return et.Items, error *
func (*Model) DefineAtribute ¶
* * DefineAtribute * @param name string * @param typeData TypeData * @param def interface{} * @return *Model *
func (*Model) DefineColumn ¶
* * DefineColumn * @param name string * @param typeData TypeData * @param def interface{} * @return *Model *
func (*Model) DefineCreatedAtField ¶
* * DefineCreatedAtField * @return *Column *
func (*Model) DefineDetail ¶
* * DefineDetail * @param name string * @param fkn string * @param version int * @param detail Detail * @return *Model *
func (*Model) DefineDictionary ¶ added in v1.0.3
func (s *Model) DefineDictionary(key, value string) *Dictionary
* * DefineDictionary * @param name string * @param key string * @param value interface{} * @return *Dictionary *
func (*Model) DefineEvent ¶
* * DefineEvent * @param tp TypeEvent * @param event Event * @return *Model *
func (*Model) DefineFullText ¶
* * DefineFullText * @param fields []string * @return language string * @return *Column *
func (*Model) DefineFunction ¶ added in v1.0.3
func (s *Model) DefineFunction(name string, tp TypeFunction, definition string) *Function
* * DefineFunction * @param name string * @param function string * @return *Model *
func (*Model) DefineGenerated ¶
func (s *Model) DefineGenerated(name string, f FuncGenerated)
* * DefineGenerate * @param name string * @param function string * @return *Model *
func (*Model) DefineHidden ¶
* * DefineHidden * @param colums ...string * @return *Model *
func (*Model) DefineHistory ¶
* * DefineHistory * @param n int * @param fkn string * @param version int * @return error *
func (*Model) DefineIdxColumn ¶ added in v1.0.5
* * DefineIdxColumn * @param name string * @param typeData TypeData * @param idx int * @param def interface{} * @return *Model *
func (*Model) DefineIndex ¶
* * DefineIndex * @param colums ...*Column * @return *Model *
func (*Model) DefineIndexField ¶
* * DefineIndexField * @return *Column *
func (*Model) DefineKey ¶ added in v1.0.3
* * DefineKey * @param colums ...*Column * @return *Model *
func (*Model) DefineKeyField ¶ added in v1.0.5
* * DefineKeyField * @return *Column *
func (*Model) DefineManyToOne ¶ added in v1.0.5
* * DefineManyToOne * @param to *Model * @param fkn string * @return *Model *
func (*Model) DefineOneToMany ¶ added in v1.0.5
* * DefineOneToMany * @param to *Model * @param fkn string * @return *Model *
func (*Model) DefinePrimaryKey ¶
* * DefinePrimaryKey * @param name string * @return *Column *
func (*Model) DefineProjectField ¶
* * DefineProjectField * @return *Column *
func (*Model) DefineRelation ¶
* * DefineRelation * @param name string * @param fkn string * @param tag string *
func (*Model) DefineRequired ¶
* * DefineRequired * @param requireds ...string * @return *Model *
func (*Model) DefineRollup ¶
* * DefineRollup * @param name string * @param fkn string * @param tag string *
func (*Model) DefineSourceField ¶
* * DefineSourceField * @return *Column *
func (*Model) DefineStateField ¶ added in v1.0.5
* * DefineStateField * @return *Column *
func (*Model) DefineSystemKeyField ¶
* * DefineSystemKeyField * @return *Column *
func (*Model) DefineUnique ¶
* * DefineUnique * @param colums ...*Column * @return *Model *
func (*Model) DefineUpdatedAtField ¶
* * DefineUpdatedAtField * @return *Column *
func (*Model) GetColumns ¶ added in v1.0.3
* * GetColumns * @param name string * @return *Column *
func (*Model) GetField ¶ added in v1.0.5
* * GetField * @param name string, isCreated bool * @return *Field *
func (*Model) LoadByTable ¶ added in v1.0.5
* * LoadByTable * @return error *
func (*Model) MakeCollection ¶ added in v1.0.5
* * MakeCollection * @return *Model *
func (*Model) OnListener ¶ added in v1.0.4
func (s *Model) OnListener(channels []string, listener HandlerListener)
func (*Model) Serialized ¶ added in v1.0.5
* * Serialized * @return []byte, error *
type Ql ¶
type Ql struct {
*QlFilter
Db *DB `json:"-"`
TypeSelect TypeSelect `json:"type_select"`
Froms []*QlFrom `json:"froms"`
Selects []*QlSelect `json:"selects"`
Joins []*QlJoin `json:"joins"`
Groups []*QlSelect `json:"group_bys"`
Havings *QlHaving `json:"havings"`
Orders []*QlOrder `json:"orders"`
Details []*QlSelect `json:"details"`
Generateds []*FuncGenerated `json:"generateds"`
Sheet int `json:"sheet"`
Offset int `json:"offset"`
Limit int `json:"limit"`
Sql string `json:"sql"`
Source string `json:"source"`
Result et.Items `json:"result"`
// contains filtered or unexported fields
}
func (*Ql) GetAgregation ¶ added in v1.0.5
* * GetAgregation * @params name string * @return *Field *
func (*Ql) GetDetails ¶ added in v1.0.5
* * GetDetails * @return et.Json *
func (*Ql) GetField ¶ added in v1.0.5
* * GetField * @param name string, isCreated bool * @return *Field *
func (*Ql) OrderByAsc ¶
* * OrderByAsc * @param columns ...any * @return *Ql *
func (*Ql) OrderByDesc ¶
* * OrderByDesc * @param columns ...any * @return *Ql *
type QlFilter ¶ added in v1.0.5
func (*QlFilter) AddValue ¶ added in v1.0.5
* * AddValue * @param val interface{} * @return *QlFilter *
func (*QlFilter) Between ¶ added in v1.0.5
* * Between * @param val1, val2 interface{} * @return FilterTo *
func (*QlFilter) Query ¶ added in v1.0.5
* * Query * @param params et.Json * @return (et.Items, error) *
type QlFrom ¶
func (*QlFrom) GetField ¶ added in v1.0.5
* * GetField * @param name string, isCreated bool * @return *Field *
func (*QlFrom) SetSelectByColumns ¶ added in v1.0.5
* * SetSelectByColumns * @param selects []*QlSelect, details []*QlSelect *
func (*QlFrom) SetSelectBySelects ¶ added in v1.0.5
* * SetSelectBySelects * @param selects []*QlSelect, details []*QlSelect *
type QlHaving ¶
type QlJoin ¶
type QlSelect ¶ added in v1.0.5
func NewQlSelect ¶ added in v1.0.5
* * NewQlSelect * @param from *QlFrom * @param name string * @return *QlSelect *
func (*QlSelect) GetField ¶ added in v1.0.5
* * GetField * @param name string, isCreated bool * @return *Field *
func (*QlSelect) TypeColumn ¶ added in v1.0.5
func (s *QlSelect) TypeColumn() TypeColumn
* * TypeColumn * @return TypeColumn *
type QlWhere ¶
type QlWhere struct {
Conector Connector
Key interface{}
Operator Operator
Values []interface{}
Language string
}
func NewQlWhere ¶
func NewQlWhere(key interface{}) *QlWhere
* * NewQlWhere * @params key interface{} * @return QlWhere *
type RID ¶ added in v1.0.5
type Reference ¶ added in v1.0.5
type Reference struct {
Key *Column
TypeRelation TypeRelation
To *Column
OnDeleteCascade bool
OnUpdateCascade bool
}
func NewReference ¶ added in v1.0.5
func NewReference(key *Column, tp TypeRelation, to *Column) *Reference
type Relation ¶
type Relation struct {
Type TypeColumn
Column *Column
To *Column
}
type Schema ¶
type Schema struct {
Db *DB `json:"-"`
CreatedAt time.Time `json:"created_date"`
UpdateAt time.Time `json:"update_date"`
Name string `json:"name"`
Description string `json:"description"`
Models map[string]*Model `json:"models"`
}
type Step ¶ added in v1.0.5
type TypeAgregation ¶
type TypeAgregation int
const ( Nag TypeAgregation = iota AgregationSum AgregationCount AgregationAvg AgregationMin AgregationMax )
type TypeColumn ¶
type TypeColumn int
const ( TpColumn TypeColumn = iota TpAtribute TpDetail TpGenerated TpRelation TpRollup )
type TypeData ¶
type TypeData int
func (TypeData) DefaultValue ¶
func (s TypeData) DefaultValue() interface{}
type TypeFunction ¶ added in v1.0.3
type TypeFunction int
const ( TpSqlFunction TypeFunction = iota TpJsFunction TpGoFunction TpPythonFunction )
type TypeRelation ¶ added in v1.0.3
type TypeRelation int
const ( RelationOneToOne TypeRelation = iota RelationOneToMany RelationManyToMany RelationManyToOne )
type UndoRecord ¶ added in v1.0.5
Source Files
¶
- adapter.go
- column-detail.go
- column-field.go
- column-generated.go
- column.go
- command-bulk.go
- command-delete.go
- command-insert.go
- command-prepare.go
- command-undo.go
- command-update.go
- command-where.go
- command.go
- database.go
- drivers.go
- flow.go
- jdb.go
- model-command.go
- model-define.go
- model-dictionary.go
- model-event.go
- model-fulltext.go
- model-function.go
- model-index.go
- model-listener.go
- model-reference.go
- model-relation.go
- model-vmj.go
- model-where.go
- model.go
- msg.go
- ql-agregation.go
- ql-concat.go
- ql-filter.go
- ql-from.go
- ql-groupby.go
- ql-having.go
- ql-join.go
- ql-limit.go
- ql-orderby.go
- ql-prepare.go
- ql-query.go
- ql-select.go
- ql-where.go
- ql.go
- query.go
- schema.go