Javascript 续写如何查找包含多个where子句和timestamp的行>;现在()

Javascript 续写如何查找包含多个where子句和timestamp的行>;现在(),javascript,node.js,sequelize.js,Javascript,Node.js,Sequelize.js,我该如何使用Sequelize SELECT FROM sessions WHERE user_id = ? AND token = ? AND expires > NOW() 下面是我要做的(假设Session是一个续集模型): 谢谢 您是否尝试在sequelize中使用查找器的数组表示法 Session.find({ where: ['user_id=? and token=? and expires > NOW()', someNumber, someString] })

我该如何使用Sequelize

SELECT FROM sessions WHERE user_id = ? AND token = ? AND expires > NOW()
下面是我要做的(假设
Session
是一个续集模型):


谢谢

您是否尝试在sequelize中使用查找器的数组表示法

Session.find({
  where: ['user_id=? and token=? and expires > NOW()', someNumber, someString]
}).on('success', function (s) { /* things and stuff */ });
您可以签出此页面:

希望这能奏效。否则它就是一个bug:D

另一种方法:

Session.find({
  where: {
    user_id: someNumber,
    token: someString,
    expires: {
      $gt: (new Date())
    }
  }
}).on('success', function (s) { /* things and stuff */ });

请注意,截至本帖和sequelize的最新版本,上述答案已过时。我发布了我得到的解决方案,希望能为某人节省一些时间

filters["State"] = {$and: [filters["State"], {$not: this.filterSBM()}] };
请注意JSON对象中的$and数组以及缺少?代币替换

或者用一种更一般的方式,因为这可能有助于人们把自己的头绕在它周围:

{ $and: [{"Key1": "Value1"}, {"Key2": "Value2"}] }

啊,我的坏。。。我想我没有意识到你可以有多个替换使用这种方法。谢谢我很乐意改变被接受的答案,但我现在没有时间来测试。也许@sdepold想插话?
{ $and: [{"Key1": "Value1"}, {"Key2": "Value2"}] }