具有Sails.js 1.0的嵌套属性where子句不再起作用

时间:2017-06-24 14:18:19

标签: javascript mongodb sails.js waterline

我刚刚升级到Sails.js 1.0,我的装饰模式停止了工作。

这就是我所拥有的:

let model = Model.find()

model
  .where({
    'nested.property': {
      '>': 1
    }
  })

model.exec()

给我:

  

无法使用提供的where子句。无法过滤   nested.propertynested.property不是。的有效名称   水线中的属性。即使这个模型(model)声明   schema: false,这是不允许的。

我的数据库是MongoDB。

1 个答案:

答案 0 :(得分:1)

这是一个无法记录的功能,不再适用。这里有完整的引用:

  

看起来你依赖于一些无证的功能   恰好在以前的版本中工作的水线;亦即   在Waterline查询中使用本机Mongo查询语法。在1.0中,   您需要使用较低级别的数据存储功能。

Source

我最终使用支持点表示法的mquery(例如nested.property)。