直接模型的所有权

取消

我有一个拥有房屋的用户(几个用户可以拥有房屋),房屋可以有多个家具。

CustomUser.json关系:

"houses": {
   "type": "hasAndBelongsToMany",
   "model": "House",
   "foreignKey": "houseId"
}

House.json关系:

"furnitures": {
   "type": "hasAndBelongsToMany",
   "model": "Furniture",
   "foreignKey": ""
},
"customUsers": {
   "type": "hasAndBelongsToMany",
   "model": "CustomUser",
   "foreignKey": ""
}

我的ACL很简单,房屋和家具的外观如下所示:

"acls": [
    {
      "accessType": "*",
      "principalType": "ROLE",
      "principalId": "$everyone",
      "permission": "DENY"
    },
    {
      "accessType": "*",
      "principalType": "ROLE",
      "principalId": "admin",
      "permission": "ALLOW"
    },
    {
      "accessType": "*",
      "principalType": "ROLE",
      "principalId": "$owner",
      "permission": "ALLOW"
    }
]

现在,为用户访问房屋可以很好地工作,但由于它们属于房屋(房屋是所有者),因此用户不会列出其家具。如何解决此最简单的方法?最好的办法就是以某种方式定义用户在整个房屋中拥有家具吗?但是,家具必须属于房屋(因为多个用户可以拥有房屋)。

取消

编写我自己的角色解析器使这一过程变得非常灵活,在角色解析器中,我必须做出逻辑来找到原始的父级,并确保没有死关(因为LB还不支持层叠)。

我建议从这里开始:

https://loopback.io/doc/zh/lb3/Defining-and-using-roles.html

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章