GridFS和Sailsjs

时间:2014-02-11 16:09:33

标签: mongodb sails.js gridfs

为了创建新的GridFS实例,应该提供一个数据库

var grid = new Grid(db, 'fs');

如何在不重新连接的情况下获取数据库(考虑sails.db或sails.adapter-mongo.db之类的内容)?

1 个答案:

答案 0 :(得分:2)

我是sailsjs的新手,但我和mongodb有类似的问题 所以,我开始深入研究sails源代码并发现了这一点。 (如果我错了,请纠正我)

您创建(生成)的每个风帆模型都与连接对象绑定。 这定义适配器,无论你在适配器配置文件中配置什么。

参考sails doc“自定义适配器”

自定义适配器必须具有指向db instance的属性。

总之,您可以通过

访问它

YourModelName.connections.dbNameFromConfigfile

e.g。

adapter.js(0.9)或connection.js(0.10.x)

module.exports.connections = {


  someMongodbServer: {
    adapter: 'sails-mongo',
    host: 'localhost',
    port: 27017,
    // user: 'username',
    // password: 'password',
    database: 'fileDb'
  },



};

File.js(Model)

module.exports = {

}

FileController.js(Controller)

module.exports = {
  upload: function(req, res){
    var db = File.connections.someMongodbServer;  // name at config file


     your code here....

  }

}