Skip to content

form usage.md

cg33 edited this page Aug 5, 2018 · 1 revision

表单类型说明

配置编辑和新建表单,需要了解FormStruct结构

type FormStruct struct {
	Field    string
	TypeName string
	Head     string
	Default  string
	Editable bool
	FormType string
	Value    string
	Options  []map[string]string
	ExcuFun  FieldValueFun
}

其中Field代表字段名,TypeName代表字段类型名,Head代表表头名, Value代表编辑的值,Options代表类型为选择时的选项,FormType代表表单类型 Default代表编辑时是否可编辑。 ExcuFun代表字段值过滤函数,定义如下:

type FieldValueFun func(value RowModel) interface{}

type RowModel struct {
	ID    int64
	Value string
}

传入的RowModel有两个属性,一个是ID,一个是Value。ID是该行数据记录的主键ID,Value代表该字段的值。

简单例子

// 表单显示配置
userTable.Form.FormList = []FormStruct{
    {
        Head:     "姓名",
        Field:    "name",
        TypeName: "varchar",
        Default:  "",
        Editable: true,
        FormType: "default",
        ExcuFun: func(model RowModel) string {
            return model.Value
        },
    }, {
        Head:     "性别",
        Field:    "sex",
        TypeName: "tinyint",
        Default:  "",
        Editable: true,
        FormType: "text",
        ExcuFun: func(model RowModel) string {
            return model.Value
        },
    },
}