2016-03-22 8 views
-1

Timestamp()mongodb docsで言及されている他のmongoシェル操作はどのようにしてmongooseを使用できますか?Mongo BSONタイプMongoose

私はthisような何かをした場合、私はエラーを取得:Timestampよう

oplogModel.find({ts: {$gte: lastTimestamp, $lt: Timestamp(currTimestam 
                ^
ReferenceError: Timestamp is not defined 
+0

可能な複製http://stackoverflow.com/questions/10006218/which-schematype-in​​-mongoose-is-best-for-timestamp? – zangw

+0

元のフォームから質問を変更しないでください。代わりに新しい質問をしてください。 –

答えて

0

オブジェクトは、ネイティブドライバパッケージで定義されています。あなたが輸入を設定し、BSONタイプのドライバで定義された関数を使用できるようになります

var mongoose = require('mongoose'), 
    Timestamp = mongoose.mongo.Timestamp; 

あなたはmongoose.mongoを呼び出すことにより、基本となるノードのネイティブドライバを参照することができます。

シェル内の「すべてではない」ヘルパーが利用可能であることに注意してください。 BSON型定義関数など、実際に意味をなさないものだけが実際にはすべてのドライバで使用可能になります。

ほとんどの場合、実際にはDateが必要です。いずれにしてもBSON Dateオブジェクトですが、実際にはエポック値からミリ秒単位で格納されています。もちろん、問題の言語で最も一般的に使用されるDateオブジェクトとして逆シリアル化されます。

Timestampは特殊なケースであり、実際には2つの間のストレージ上に何かを得ることはありません。

+0

'var Timestamp = mongoose.mongo.TimeStamp; oplogModel.find({TS:{$ GTE:lastTimestamp、$のLT:タイムスタンプ(currTimestam ^はTypeError:未定義関数 ' タイムスタンプが定義されていない – Shipra

+0

@Shipraそれの 'mongoose.mongo.Timestamp'ありません。インポートは正しい大文字小文字を使用しません。私のタイプは –

+0

ですoopogに保存されているBOSONタイムスタンプと比較するにはDateオブジェクトまたはエポックタイムスタンプを使用できますか? – Shipra

関連する問題