Documentation ¶
Index ¶
- Variables
- type ErrNotFoundField
- type ErrNotFoundTable
- type FieldStructure
- func (field *FieldStructure) GetColumnTitles() (titleFull, titleLabel, placeholder, pattern, dataJson string)
- func (field *FieldStructure) GetForeignFields() string
- func (field *FieldStructure) GetParentFieldName() (name string)
- func (field *FieldStructure) GetSQLFromSETID(key, parentTable string) string
- func (field *FieldStructure) ParseComment(COLUMN_COMMENT string) string
- func (field *FieldStructure) TypeInput() string
- type FieldsTable
Constants ¶
This section is empty.
Variables ¶
var SchemaCache map[string]*FieldsTable
SchemaCache хранит структуру полей - стоит продумать, как хранить еще и ключи
Functions ¶
This section is empty.
Types ¶
type ErrNotFoundField ¶
ErrNotFoundField if not found in table {Table} field by name {Column}
func (ErrNotFoundField) Error ¶
func (err ErrNotFoundField) Error() string
type ErrNotFoundTable ¶
type ErrNotFoundTable struct {
Table string
}
ErrNotFoundTable if not found table by name {Table}
func (ErrNotFoundTable) Error ¶
func (err ErrNotFoundTable) Error() string
type FieldStructure ¶
type FieldStructure struct { Table *FieldsTable COLUMN_NAME string DATA_TYPE string COLUMN_DEFAULT string IS_NULLABLE string CHARACTER_SET_NAME string COLUMN_COMMENT string COLUMN_TYPE string CHARACTER_MAXIMUM_LENGTH int PrimaryKey bool IsHidden bool InputType string CSSClass string CSSStyle string TableName string Events map[string]string Where string Figure string Placeholder string Pattern string MinDate string MaxDate string BeforeHtml string Html string AfterHtml string ForeignFields string LinkTD string DataJSOM map[string]interface{} EnumValues []string SETID, NODEID, TABLEID bool IdForeign bool TableProps, TableValues string ChildrenFields *FieldsTable }
FieldStructure нужна для подготовки к отображению поля на форме (возможно, в таблице и еще других компонентах веб-старницы) На данный момент создается на лету, в будущем TODO: hfpltkbnm yf cnfnbxtcre. b lbyfvbxtcre. xfcnb
func (*FieldStructure) GetColumnTitles ¶
func (field *FieldStructure) GetColumnTitles() (titleFull, titleLabel, placeholder, pattern, dataJson string)
GetColumnTitles split title field for form render
func (*FieldStructure) GetForeignFields ¶
func (field *FieldStructure) GetForeignFields() string
GetForeignFields возвращает поле в связанной таблице, которое будет отдано пользователю например, для вторичных ключей отдает не idзаписи, а name || title || какой-либо складное поле
func (*FieldStructure) GetParentFieldName ¶
func (field *FieldStructure) GetParentFieldName() (name string)
GetParentFieldName fro field by her name
func (*FieldStructure) GetSQLFromSETID ¶
func (field *FieldStructure) GetSQLFromSETID(key, parentTable string) string
GetSQLFromSETID return sql-query string fro field {key}
func (*FieldStructure) ParseComment ¶
func (field *FieldStructure) ParseComment(COLUMN_COMMENT string) string
ParseComment извлекает из комментария к полю значимые токены
func (*FieldStructure) TypeInput ¶
func (field *FieldStructure) TypeInput() string
TypeInput стиль показа для разных типов полей новый метод, еще обдумываю
type FieldsTable ¶
type FieldsTable struct { Name string ID int Comment string IsDadata bool Rows []*FieldStructure Hiddens map[string]string SaveFormEvents map[string]string DataJSOM map[string]interface{} }
FieldsTable for fields parameters in form
func GetFieldsTable ¶
func GetFieldsTable(tableName string) *FieldsTable
GetFieldsTable return schema table from cache
func GetParentTable ¶
func GetParentTable(tableName string) *FieldsTable
GetParentTable return name parent table
func (*FieldsTable) FillSurroggateFields ¶
func (table *FieldsTable) FillSurroggateFields(tableName string)
FillSurroggateFields fill surrogate field property for API TODO: заменить строки имена таблиц на ссылку на схему
func (*FieldsTable) FindField ¶
func (table *FieldsTable) FindField(name string) *FieldStructure
FindColumn search field in table by {name} & return structure field