1.ManyToOne功能增强
1.ManyToOne不需要填写依赖和允许跨App安装
- 如果是模型的ManyToOne依赖,app.json不需要填写应用依赖
- 如果2个APP不存在继承扩展,只存在调用关系或者模型的many2one引用,可以不安装在一起
- 注意:如果模型之前存在继承扩展关系,必须安装在一起
1.@ManyToOne 指定targetModel的格式为 appName.modelName
@Model
public class TestLog extends BaseModel {
@ManyToOne(targetModel = "newSdkApp.TestOrg")// Many2one跨app安装,格式为:其他app的名字.模型名
@JoinColumn(name = "org_code")
private Map<String, Object> testOrg;
}
2.如果需要再ManyToOne方添加tab页显示另外一个app的数据,需要再tabs的body里面指定 "app": "newSdkAppOthers"
"tabs": [
{
"body": {
"columns": [
{
"label": "备注",
"name": "remark"
},
{
"label": "创建时间",
"name": "createDate"
}
],
"app": "newSdkAppOthers",
"field": "testLogs",
"type": "grid"
},
"header": "日志列表",
"tbar": []
}
]
2.ManyToOne指定任意的显示字段
之前的ManyToOne默认只能是 displayForModel字段,现在已经修改成支持任意字段的显示 示例
指定任意字段:
@ManyToOne(displayName = "2单选异步获取Many2one", cascade = {CascadeType.DEL_SET_NULL},displayFormat ="orgCode")
指定多个字段格式化输出:
@ManyToOne(displayName = "2单选异步获取Many2one", cascade = {CascadeType.DEL_SET_NULL},displayFormat ="${name}-${orgCode}")