有谁知道我如何在 MongoDB 中更新。
我想用 timesvisted 更新 totalVisits
// Test data
var currentUser = "John"
var currentPage = "pageName"
var timesvisited = 59
Page.find({"_id" : currentUser}, [], {},function(err, pages) {
pages = pages.map(function(ud) {
return { userDetails: ud};
});
//database structure example
{ "_id" : "John",
"pageName" : { "totalVisits" : 58,
"timeOnPage" : 2432,
"lastVisitDate" : "10/11/2011",
"clickNoOnPage" : "5"
},
"anotherPageName" : { "totalVisits" : 18,
"timeOnPage" : 5362,
"lastVisitDate" : "01/10/2011",
"clickNoOnPage" : "15"
我正在尝试更新 totalVisits 值并尝试过类似
{$set : { pages[0].userDetails[currentPage].totalVisits : timesvisted}}
但是我收到“SyntaxError: Unexpected token [”消息
我遇到的问题之一是 [currentPage] 部分,因为 currentPage 可以更改,因此我无法对 pageName 进行硬编码。
编辑* **
我已经修改了这一行
lastVisitedSiteDate = {$set : { "pageName.totalVisits" : timesvist}};
这很好用。但是,我需要不要硬编码 pageName,它需要类似于 currentPage,以便可以将不同的页面名称传递给它,例如 anotherPageName。