模型属性用来定义对应表的字段属性,在选择生成界面时,会自动根据表中再有的字段生成基本配置,可以根据生成的字段增删改。如果表中新增了字段,必须也在模型属性中也定义,如果不定义,该字段在后面模块中的配置都不会生效。
模型属性的配置全局生效,props
中的配置影响后面的模块配置,后面的模块会根据 prop
的值匹配默认的 label
和 type
。
模型属性配置的下方有个输入框,默认显示的是表名,可以定义对应的标题,用于在编辑和查询时显示。
为了后续的拓展,模型属性定义成对象,目前只有 props
这个属性。
为对象数组,对象中的属性含义如下:
属性名 | 类型 | 描述 | 必填 |
---|---|---|---|
prop | String | 数据库中的字段名 | true |
label | String | 字段名对应的显示值,如果表格、编辑器和查询器中没有配置对应的显示名,则以此作为默认值 | false |
type | String | 描述字段的储存类型,必须跟数据库中储存的类型一致,具体类型的含义见下面的 type 表格 |
true |
targetClass | String | 定义 Pointer 类型字段的关联表名,如果字段为 Pointer 类型时,必填。 |
false |
用来指定字段储存的类型,后面的表格、编辑器和查询器会通过 prop
的字段值来匹配字段的属性,以实现不同的展示和保存逻辑。
属性值 | 描述 |
---|---|
String | 字段为字符串 |
Number | 字段为数字 |
Boolean | 字段为布尔值 |
Array | 字段为数组 |
Object | 字段为对象 |
Pointer | 字段为Pointer类型 |
Relation | 字段为Relation类型 |
ArrayPointer | 字段为保存Pointer的数组类型 |
{
"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"
}
]
}