标签: sails-mongo

TypeError:无法读取undefined的属性'id' - sails和mongodb

Sails @ beta,mongodb,windows 7 32bit,

我试图通过应用程序创建一个新用户后收到上述错误.当我从config/policies.js删除策略isPawn一切正常.我不明白这个政策有什么问题.在我看来,我错误地访问mongodb id属性.

isPawn.js https://github.com/mrcn/C_Express/blob/master/api/policies/isPawn.js

module.exports = function(req, res, next) {

  var sessionUserMatchesId = req.session.User.id === req.param('id');
  var isAdmin = req.session.User.admin;

  // The requested id does not match the user's id,
  // and this is not an admin

  if (!(sessionUserMatchesId || isAdmin)) {
    var noRightsError =
    [{
      name: 'noRights',
      message: 'You must be an admin.'
    }];
    req.session.flash = {
      err: noRightsError
    };
    res.redirect('/session/new');
    return;
  }

  next();

};
Run Code Online (Sandbox Code Playgroud)

用户模型 - user.js https://github.com/mrcn/C_Express/blob/master/api/models/User.js

module.exports = {

  schema: true, …
Run Code Online (Sandbox Code Playgroud)

node.js sails.js sails-mongo

3
推荐指数
1
解决办法
9949
查看次数

从javascript对象构造水线模型对象

为了减轻MongoDB服务器的负载,我想从Redis中的Waterline缓存一些对象.为此,我必须将对象序列化为JSON.

我的问题是,我如何构建我的JSON回到Waterline模型的实例,具有数据类型处理,成员函数等,使这对消费代码透明?

每当我运行本机MongoDB查询时,我也想要这个,给我带有本地ObjectID的对象,不匹配的日期类型等.

User.findOne(id, function (err, user) {
   // to string and back again, could be stored in cache in the meantime
   var object = JSON.parse(JSON.stringify(user));

   var user = new User(object); //doesn't work
   var user = User.toObject(object); // doesn't work
}
Run Code Online (Sandbox Code Playgroud)

sails.js waterline sails-mongo

3
推荐指数
1
解决办法
1244
查看次数

mongoDB Atlas♥︎Sailsjs(水线风帆 - mongo适配器)

我刚刚创建了一个MongoDB Atlas帐户.

我正在使用带有水线帆 - mongo适配器的

但我无法通过我的应用程序进行连接.

  • 一切都是最新的.
  • 我可以连接到任何其他数据库(localhost,digitalocean服务器,...)
  • 我也可以通过他们的工具(MongoDB Compass)连接到MongoDB Atlas数据库,并通过shell连接到mongo cmd

但似乎sails-mongo只是不使用该数据库,这需要一个非常新的mongo版本

有人使用MDB Atlas && sailsjs吗?(我想重构我的应用程序,但它开始是huuge,似乎不可能使用"mongodb"适配器)

版本: - 节点:6.3.1 - npm:3.10.6 - mongo(shell):3.4.2 - sails-mongo npm模块:sails-mongo@0.12.2

mongodb atlas sails.js sails-mongo

3
推荐指数
1
解决办法
2310
查看次数

如何使用Waterline和Sails.js(版本0.10)从mongo数据库中提取不同的值?

使用Sails.js版本0.10.x,假设我有一个模型Dog,填充如下(yaml为方便起见,以格式写出,但在我的情况下,它实际上是在mongo数据库中.)

dogs:
-  breed: "wolf"
   name: "Fido"
-  breed: "wolf"
   name: "Roger"
-  breed: "dingo"
   name: "Nipper"
-  breed: "dingo"
   name: "Ernie"
-  breed: "corgi"
   name: "Bernadi"
-  breed: "corgi"
   name: "Queenie"
-  breed: "poodle"
   name: "Christopher"
-  breed: "poodle"
   name: "Tony"

etc
Run Code Online (Sandbox Code Playgroud)

所以现在我想创建一个可用品种的列表.

Dog.find().exec(err, dogs) {
  breeds = [];
  dogs.each(function(dog)) {
    if (breeds.indexOf(dog.breed) === -1) breeds.push(dog.breed);
  }
  ...
}
Run Code Online (Sandbox Code Playgroud)

是否有更简单的方法来执行此操作,数据库上的命中次数更少?就像是

Dog.find().distinct('breed').exec(function(err, breeds){
  ...
});
Run Code Online (Sandbox Code Playgroud)

我发现这个封闭的水线问题似乎表明我可以使用一种.distinct方法,但我尝试了它并且没有骰子. …

distinct mongodb sails.js waterline sails-mongo

2
推荐指数
1
解决办法
2166
查看次数

sails.js从集合水线中删除所有成员

我想删除集合具有的所有成员,但是我不想将每个成员都传递ID.member()方法。 水线文件说明了删除特定成员的方法,例如:

await User.removeFromCollection(3, 'pets')
.members([99,98]);
Run Code Online (Sandbox Code Playgroud)

我想做某事:

await User.removeFromCollection(3, 'pets')
.members(['*']);
Run Code Online (Sandbox Code Playgroud)

collections node.js sails.js waterline sails-mongo

2
推荐指数
1
解决办法
309
查看次数

Sails-mongo 在两个日期之间获得结果

我正在使用带有sails-mongo适配器的mongodb处理sails js,我的问题是我无法使用sails-mongo获取两个日期之间的结果。

那么有没有检索这些数据的解决方案,实际上我想获得每天的条目总数(过去 15 天)。

因此,如果您知道任何事情或解决此问题的任何替代方法,请分享。

--谢谢-ND

javascript mongodb sails.js sails-mongo

1
推荐指数
1
解决办法
1461
查看次数

在 MongoDb 中查找完全匹配的数组或具有数组的所有值

我有这样的收藏条目

[
 {
    形状:[{id:1,status:true},{id:2,status:false}]
 },
 {
    形状:[{id:1,status:true}]
 }
]

我想获取与 array 完全匹配的数据,意味着包含所有元素。的数组。

前任。其中 shape.id = [1,2] / [ {id: [1,2] } ] (任何一个都喜欢)

那么它应该只返回

[
 {
    形状:[{id:1,status:true},{id:2,status:false}]
 }
]

所以如果有任何本地 mongodb 查询,请帮助我。

谢谢

--ND

mongoose mongodb mongodb-query sails-mongo

0
推荐指数
1
解决办法
1575
查看次数

使用Sails.js进行慢速MongoDB查询

我使用Sails.js和mongoDb(sails-mongo)编写了一个应用程序.

首先,我决定将所有内容写入单个文档...并且数据库在5GB数据上放慢速度."慢速"意味着在30-50秒内执行基本查找查询.

比我在多个集合中重写所有并添加索引..我的模型示例:

Markets.js

  module.exports = {
      attributes: {
        name: {
          type: 'string',
          index: true
        },
        pairs: {
         collection: 'Exchanges',
         via: 'source',
        }
      }
    };
Run Code Online (Sandbox Code Playgroud)

和Exchanges.js

module.exports = {

  attributes: {
    s1: {
      type: "string"
    },
    source:{
      model: "Maklers",
      index: true
    },
    s2: {
      type: "string"
    },
    p: {
      type: 'float'
    },
    v1: {
      type: 'float'
    },
    v2: {
      type: 'float'
    },
    vb: {
      type: 'float'
    }
  }
};
Run Code Online (Sandbox Code Playgroud)

和慢查询的例子

Markets.findOne({
          name: info,
          sort: 'createdAt DESC',
          limit: 1,
          createdAt: { …
Run Code Online (Sandbox Code Playgroud)

javascript mongodb node.js sails.js sails-mongo

0
推荐指数
1
解决办法
579
查看次数