使用Where和$或使用findOne方法

时间:2016-11-25 21:16:52

标签: node.js express sequelize.js

return options.model.findOne({
      // $or: [{id: req.params.id}, {key: req.params.id}],
      where: {id: req.params.id},
    })

我正在努力获得$或正常工作,而且大多数情况下都是如此。但是,如果我传入一个伪值(我的数据库中不存在的值),$或仍然返回一个值,而where不返回值。

我看了http://docs.sequelizejs.com/en/latest/docs/querying/

虽然它确实没有为$或运营商提供太多帮助。有人经历过这个并知道一个好的工作吗?

1 个答案:

答案 0 :(得分:0)

通过一些搜索,我能够找到这个答案。 Sequelize OR condition object

对我来说,我发现语法有点令人困惑。无论如何,你可以嵌套$或像这样。

where: {
        $or: [
          {id: {$eq: req.params.id}},
          {key: {$eq: req.params.id}}
        ]
      }