多对多关系(many-to-many)
定义多对多关系需要定义一个中间实体进行关联
简单模式
Example: Role *..*
User
Role:
{
"fields": {
"id": "uuid"
},
"relations": {
"users": "*..* User(RoleUser)
}
}
RoleUser
是中间实体,必须指定
User:
{
"fields": {
"id": "uuid"
},
"relations": {
"roles": "*..* Role(RoleUser)
}
}
RoleUser
是中间实体,必须指定
RoleUser:
{
"fields": {
"roleId": "-> Role primary key",
"userId": "-> User primary key"
}
}
中间实体必须定义两个多对一关系并分别指向多对多关系的两个实体
设置expandable
{
"relations": {
"users": "*..* User(RoleUser) expandable"
}
}
设置queryable
Single 0.6.0
{
"relations": {
"users": "*..* User(RoleUser) expandable queryable"
}
}
当expandable=true
时,多对多关系的queryable
默认也true
,无需另外声明。