I′ve been using node-mongoskin to connect this two. Everything was ok until I queried some "date" field which I think should be returned as javascript′s Date
object. But result′s type was string, which is odd (for me) and inconvenient.
Inserting looks something like this:
var doc = {
date: new Date(),
info: 'Some info'
}
db.users.insert( doc, {safe: true}, function(err, res) {
...
});
And result of above is (without _id
field):
{ "date" : "Mon Oct 24 2011 18:00:57 GMT+0400 (MSK)", "info": "Some info" }
However, inserting with MongoDB Shell works just fine, except type of field is ISODate
> db.things.insert({ date: new Date() }); db.things.find();
{ "_id" : ObjectId("4eae9f2a34067b92db8deb40"), "date" : ISODate("2011-10-31T13:14:18.947Z") }
So, the question is: how should I insert documents to query date fields as Date
object? What I want is setting fields on database-server-side. I just send something like null-fields, and db-server setting those for me using default mongo′s mechanisms.
Inserting timestamps (as native MongoDB timestamp) is also a problem, but it′s not such a big deal.
PS: No luck going through mongoskin and mongodb-native docs.
It was probably some bug in my code or the mongo driver. Now, the following works just fine:
db.collection.insert({d: new Date()});
Timestamps support described here: http://mongodb.github.com/node-mongodb-native/api-bson-generated/timestamp.html.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With