sequelize.js - 将 Casl 与 Featherjs-Sequelize 集成

标签 sequelize.js feathersjs feathers-sequelize casl

我正在尝试设置角色和权限来处理 api 请求。我正在将 Feathers.js 与 Feathers-sequelize 一起用于 PostGres 数据库。

为了管理角色和权限,我使用 casl.js:
https://github.com/stalniy/casl

大多数集成 Casl 的示例都是基于 mongo/mongoose 的。
之后我阅读了以下文章:
https://stalniy.github.io/casl/abilities/database/integration/2017/07/22/database-integration.html

在提供的示例中,他们使用了 Sequelize 作用域,目前羽毛 Sequelize 不支持带参数的 Sequelize 作用域(从我所见)

长话短说,我试图找到一种将feathers-sequelize 与Casl 集成来管理资源权限的方法。

到目前为止,我可以为每个用户构建 Casl 的“能力”,但现在将这些能力连接到数据库是我遇到的问题。

使用 Mongo/mongoose 时很容易,因为您只需执行 toMongoQuery 并传入参数即可。

如果我需要添加任何内容,请告诉我,不知道如何获得有关此特定问题的帮助。

问候,
埃米尔

最佳答案

您可以使用 params.sequelize params.query + toSequelizeQuery function

查看 CASL Feathers example 以查看我如何为 feathers-mongoose 执行此操作的示例

关于sequelize.js - 将 Casl 与 Featherjs-Sequelize 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51426762/

相关文章:

reactjs - 你如何在 sequelize 中传递一个 json 数组?

sequelize.js - 如何在sequelize中查询多对多关系

orm - 如何使用 Sequelize 将一列的值默认为与模型中的另一列相同?

node.js - 如何在 sequelize 中存储本地日期时间?

javascript - Sequelize - 我收到错误 : "This version of MySQL doesn' t yet support 'item type for JSON"

sequelize.js - 如何将 Sequelize 模型与预定义的表同步

node.js - 使用express将tus-node-server集成到feathersjs中

node.js - 如何从feathers.js 服务重定向

dependency-injection - 使用依赖注入(inject)将 Feathers 应用程序对象传递给 TypeGraphQL

node.js - 带有 Feathers.js 和 Sequelize 的只读模式