ノード内の MongoDB に JSON ファイルをインポートしようとしています。これが私がやろうとしていることです:
db.open(function(err, db) {
if(!err) {
db.collection('orgs', {safe: true}, function(err, collection) {
if (err) {
console.log("The 'orgs' collection doesn't exist. Creating it with sample data...");
db.collection('orgs', function(err, collection) {
orgs = require("../data/orgs.json");
collection.insert(orgs, {safe:true}, function(err, result) {});
});
}
});
}
});
NodeJS は JSON を JSON として自動的にインポートできることに注意してください。これは便利ですが、JSON は ISODate や ObjectID などのオブジェクトを処理しません。インポートしようとしている JSON データの抜粋を次に示します。
./data/orgs.json:
{
"stub": "apple",
"name":"Apple, Inc.",
"timezone": "America/New_York",
"currency": "USD",
"plans": [
{"planId":1, "dtStart": {"$date":"2012-12-07 12:34:56"}},
{"planId":0, "dtStart": {"$date":"2012-12-05 23:45:02"}, "dtEnd": {"$date":"2012-12-07 12:34:56"}}
]
}
Node.js には mongodb ネイティブ ドライバーを使用しています。
日付の整数表現を使用しようとしましたが、うまくいきませんでした。
MongoDB が認識する JSON で ISODate および ObjectID フィールドを表す方法はありますか?