Using Date Ranges

103 views
Skip to first unread message

DaAwesome P

unread,
Nov 7, 2016, 1:40:26 PM11/7/16
to Sequelize
Hi,
I'm trying to use a date range in Postgres. Here's what I've tried:
MyModel = sequelize.define('myModel', {
  id
: { type: Sequelize.UUID, defaultValue: Sequelize.UUIDV4, primaryKey: true },
  active
: { type: Sequelize.RANGE(Sequelize.DATE), allowNull: false }
}, {
  timestamps
: true
})

MyModel.create({ active: [new Date(new Date() - 24 * 60 * 60 * 1000), new Date(new Date() + 24 * 60 * 60 * 1000)] })

let lookup
= await MyModel.findOne({
 
where: {
    active
: { $contains: new Date() }
 
}
})
However, the findOne() part gives me an error:
TypeError: values.map is not a function
        at
Constructor.RANGE.$stringify (/home/user/myproject/node_modules/sequelize/lib/dialects/postgres/data-types.js:364:36)
        at
Constructor.ABSTRACT.stringify (/home/user/myproject/node_modules/sequelize/lib/data-types.js:77:17)
        at
Object.escape (/home/user/myproject/node_modules/sequelize/lib/dialects/abstract/query-generator.js:967:32)
        at
Object.whereItemQuery (/home/user/myproject/node_modules/sequelize/lib/dialects/abstract/query-generator.js:2354:22)
        at
/home/user/myproject/node_modules/sequelize/lib/dialects/abstract/query-generator.js:1985:25
        at
/home/user/myproject/node_modules/sequelize/node_modules/lodash/lodash.js:4389:15
        at baseForOwn
(/home/user/myproject/node_modules/sequelize/node_modules/lodash/lodash.js:2652:24)
        at
Function.forOwn (/home/user/myproject/node_modules/sequelize/node_modules/lodash/lodash.js:12254:24)
        at
Object.whereItemsQuery (/home/user/myproject/node_modules/sequelize/lib/dialects/abstract/query-generator.js:1984:9)
        at
Object.getWhereConditions (/home/user/myproject/node_modules/sequelize/lib/dialects/abstract/query-generator.js:2419:19)
        at
Object.selectQuery (/home/user/myproject/node_modules/sequelize/lib/dialects/abstract/query-generator.js:1529:28)
        at
QueryInterface.select (/home/user/myproject/node_modules/sequelize/lib/query-interface.js:669:25)
        at
Model.<anonymous> (/home/user/myproject/node_modules/sequelize/lib/model.js:1390:32)
        at
Model.tryCatcher (/home/user/myproject/node_modules/bluebird/js/release/util.js:16:23)
        at
Promise._settlePromiseFromHandler (/home/user/myproject/node_modules/bluebird/js/release/promise.js:510:31)
        at
Promise._settlePromise (/home/user/myproject/node_modules/bluebird/js/release/promise.js:567:18)
Am I using $contains properly? It's only mentioned once in the docs and I couldn't find any examples.

Thanks!
DaAwesomeP
Reply all
Reply to author
Forward
Message has been deleted
0 new messages