errors | |
---|---|
|
2.7.1. 视图种子数据
包含菜单和业务模型视图,菜单即系统前端左侧展现的菜单信息;视图即每个模型的呈现方式,主要包括上下布局、Tab页、分页、按钮、检索栏等信息,平台能够以json的方式进行配置,从而达到无需前端人员也可以做出常规的页面。
2.7.1.1. 配置约束
视图种子数据文件必须配置在与app.info同级的views文件夹下:
并且文件名字需要在app.info中进行配置:
2.7.1.2. 菜单
菜单以柱状结构的json构建而成,其中sequence为排序号,@ref是指会以指定的key的id存储在数据库中(id为自动生成),model为模型名称,view默认为“grid,search,form”,其中grid为查询列表、search为查询条件栏、form为查看和编辑表单。 sdk_menus.json内容明细如下:
{
"menus": {
"sdk_root_menu": {
"name": "sdk_root_menu",
"display_name": "newsdk",
"active": true,
"sequence": 10
},
"sdk_user_menu": {
"name": "sdk_test_user",
"display_name": "测试用户",
"model": "TestUser",
"view": "grid,search,form",
"sequence": 1,
"active": true,
"parent_ids": {
"@ref": "sdk_root_menu"
}
},
"sdk_role_menu": {
"name": "sdk_test_role",
"display_name": "测试角色",
"model": "TestRole",
"view": "grid,search,form",
"sequence": 2,
"active": true,
"parent_ids": {
"@ref": "sdk_root_menu"
}
},
"sdk_org_menu": {
"name": "sdk_test_org",
"display_name": "测试组织",
"model": "TestOrg",
"view": "grid,search,form",
"sequence": 3,
"active": true,
"parent_ids": {
"@ref": "sdk_root_menu"
}
}
}
}
2.7.1.3. 视图文件
组织、用户、角色的视图为常规视图,不需要手工编写,如果需要做自定义条件,可参考菜单种子数据,如组织机构视图,在views包下新增sdk_org_view.json文件,并在app.info中注册该文件,组织机构默认视图文件为:
{
"views": {
"TestOrg_grid": {
"mode": "primary",
"name": "TestOrg表格",
"model": "TestOrg",
"type": "grid",
"body": {
"buttons": [
"@defaults"
],
"columns": [
"name",
"parent"
],
"tbar": [
"@defaults"
],
"type": "grid"
}
},
"TestOrg_form": {
"mode": "primary",
"name": "TestOrg表单",
"model": "TestOrg",
"type": "form",
"body": {
"buttons": [
"@defaults"
],
"tabs": [
{
"header": "用户",
"rowspan": 3,
"body": {
"type": "grid,form",
"field": "userList",
"columns": [
"name"
]
}
}
],
"columns": [
"name",
"parent"
],
"tbar": [
{
"name":"添加",
"action":"addEr",
"icon":"add"
},
{"name":"删除",
"action":"deleteEr"
}
],
"type": "grid"
}
},
"TestOrg_search": {
"mode": "primary",
"name": "TestOrg搜索",
"model": "TestOrg",
"type": "search",
"body": {
"columns": [
"name"
],
"type": "search"
}
}
}
}
2.7.2. 业务种子数据
如果需要app启动后自动加载一些初始化数据、或测试数据,可以通过增加业务种子数据达成目的。本例中,我们需要应用启动后自动增加一条名为"sie"的用户:
2.7.2.1. 配置约束
业务种子数据文件必须配置在与app.info同级的data文件夹下:
并将文件名称在app.info中注册:
2.7.2.2. 业务种子数据文件
test_user.json中,通过model指定模型名称,通过properties指定新增数据的属性值,详细内容如下:
{
"data": {
"rbac_role_admin": {
"model": "TestUser",
"properties": {
"name": "sie"
}
}
}
}