角度jのmongodbドライバを使用している私のウェブサイトのために、サーバjsファイルが何回開始されたかのカウンタを作りたいと思います。ノードjsの増分カウンタmongodb
値が0の可変名付きカウンタを保存してから、サーバーが実行されるたびにその値を増やしたいとします。私のコードは以下の通りです。あなたが見ることができるように、私のコードはデータベース内のフィールドを実際に更新しません。ちょうどvarible。
そもそも...よく書いたコード全体は悪い習慣のようだ。私は基本的には{id:<>、count:0}のドキュメントを持っています.1カウントフィールドしか持っていませんが、-1(すなわち整数)より大きいすべてのcountフィールドをループしています。
データベースからこの1の値を永続化/取得する簡単な方法はありませんか?
$ incのようなものを使用して、DB内部のフィールドを簡単に更新する方法はありますか?これは、あなたが始めるのに十分でなければならない
MongoClient.connect(url, function(err, db) {
if (err) {
console.log(err);
return db.close();
}
console.log("Connected correctly to DB.");
// update a record in the collection
db.users.update(
// find record with name "MyServer"
{ name: "MyServer" },
// increment it's property called "ran" by 1
{ $inc: { ran: 1 } }
);
return db.close();
});
:
おかげ
MongoClient.connect(url, function(err, db) {
assert.equal(null, err);
if (err) {
console.log(err);
}
else {
console.log("Connected correctly to DB.");
var dbusers =db.collection('users');
var cursor =dbusers.find({ "count": { $gt: -1 } });
cursor.each(function(err, doc) {
assert.equal(err, null);
if (doc != null) {
doc.count=doc.count+1;
}
}
);
}
db.close();
});
この 'doc.count + 1;'は何かするとしますか? –
をdoc.count = doc.count + 1に更新しました。 – Matoy
db(count)の値を1で増やすと仮定します。 – Matoy