Skip to content

Latest commit

 

History

History
125 lines (110 loc) · 3.91 KB

模型属性.md

File metadata and controls

125 lines (110 loc) · 3.91 KB

模型属性

模型属性用来定义对应表的字段属性,在选择生成界面时,会自动根据表中再有的字段生成基本配置,可以根据生成的字段增删改。如果表中新增了字段,必须也在模型属性中也定义,如果不定义,该字段在后面模块中的配置都不会生效。

模型属性的配置全局生效,props 中的配置影响后面的模块配置,后面的模块会根据 prop 的值匹配默认的 labeltype

配置标题

模型属性配置的下方有个输入框,默认显示的是表名,可以定义对应的标题,用于在编辑和查询时显示。

props

为了后续的拓展,模型属性定义成对象,目前只有 props 这个属性。

为对象数组,对象中的属性含义如下:

属性名 类型 描述 必填
prop String 数据库中的字段名 true
label String 字段名对应的显示值,如果表格、编辑器和查询器中没有配置对应的显示名,则以此作为默认值 false
type String 描述字段的储存类型,必须跟数据库中储存的类型一致,具体类型的含义见下面的 type 表格 true
targetClass String 定义 Pointer 类型字段的关联表名,如果字段为 Pointer 类型时,必填。 false

props属性

type

用来指定字段储存的类型,后面的表格、编辑器和查询器会通过 prop 的字段值来匹配字段的属性,以实现不同的展示和保存逻辑。

属性值 描述
String 字段为字符串
Number 字段为数字
Boolean 字段为布尔值
Array 字段为数组
Object 字段为对象
Pointer 字段为Pointer类型
Relation 字段为Relation类型
ArrayPointer 字段为保存Pointer的数组类型

example

{
    "props": [
        {
            "prop": "appid",
            "label": "appid",
            "type": "String"
        },
        {
            "prop": "openid",
            "label": "openid",
            "type": "String"
        },
        {
            "prop": "unionid",
            "label": "unionid",
            "type": "String"
        },
        {
            "prop": "tagid_list",
            "label": "tagid_list",
            "type": "Array"
        },
        {
            "prop": "subscribe",
            "label": "是否订阅",
            "type": "Number"
        },
        {
            "prop": "nickname",
            "label": "昵称",
            "type": "String"
        },
        {
            "prop": "sex",
            "label": "性别",
            "type": "Number"
        },
        {
            "prop": "language",
            "label": "语言",
            "type": "String"
        },
        {
            "prop": "city",
            "label": "城市",
            "type": "String"
        },
        {
            "prop": "province",
            "label": "省份",
            "type": "String"
        },
        {
            "prop": "country",
            "label": "国家",
            "type": "String"
        },
        {
            "prop": "headimgurl",
            "label": "头像",
            "type": "String"
        },
        {
            "prop": "subscribe_time",
            "label": "订阅时间",
            "type": "Number"
        },
        {
            "prop": "remark",
            "label": "备注",
            "type": "String"
        },
        {
            "prop": "groupid",
            "label": "组",
            "type": "Pointer",
            "targetClass": "Group"
        }
    ]
}