将node_acl与sails集成的最佳方法是什么?

时间:2014-10-17 16:19:46

标签: node.js mongodb sails.js sails-mongo

我想在https://github.com/OptimalBits/node_acl框架中使用http://sailsjs.org模块。所以我配置风帆使用像这样的mongodb: 在/config/connection.js

mongodb: {
  adapter: 'sails-mongo',
  host: 'localhost',
  port: 27017,
  user: '',
  password: '',
  database: 'acl'
}

在/config/models.js

{
  connection: 'mongodb',
  migrate: 'safe'
}

现在我必须配置acl模块,所以在/api/controllers/AclController.js我有:

var acl = require('acl');
acl = new acl(new acl.mongodbBackend(dbInstance, 'acl_'));
module.exports = {
addUserRoles : function(req, res) {
  acl.addUserRoles('joed', 'guest', function(err,data){
    return res.json({err:err, data:data});
  });
}

现在我怎样才能获得dbInstance的值来实现acl?

注意:我安装了acl和sails-mongo依赖项... 谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

node_acl似乎依赖于mongodb驱动程序,它将使用与风帆使用的Waterline ORM不同的方法。

也就是说,您应该可以创建2个与mongo实例的连接,一个通过node_acl库创建,另一个通过waterline / sails创建。只要您的帆模型被正确定义,它们就应该能够并排生活。如果您愿意,您甚至可以为您的node_acl表添加前缀,并在风帆中完全忽略它们。