0
我在嘗試更新貓鼬模式。基本上我有兩個API'/ follow /:user_id'和'/ unfollow /:user_id'。我想要實現的是每當用戶A跟隨用戶B時,用戶B在貓鼬中的追隨者字段將作爲一個增量。同時更新貓鼬模式字段
至於現在我設法只得到以下字段增加一,但不是追隨者領域。
schema.js
var UserSchema = new Schema({
name: String,
username: { type: String, required: true, index: { unique: true }},
password: { type: String, required: true, select: false },
followers: [{ type: Schema.Types.ObjectId, ref: 'User'}],
following: [{ type: Schema.Types.ObjectId, ref: 'User'}],
followersCount: Number,
followingCount: Number
});
更新版本:我想我的解決方案,但每當我張貼,它只是獲取數據(我試過郵差Chrome應用API的)。
api.js
// follow a user
apiRouter.post('/follow/:user_id', function(req, res) {
// find a current user that has logged in
User.update(
{
_id: req.decoded.id,
following: { $ne: req.params.user_id }
},
{
$push: { following: req.params.user_id},
$inc: { followingCount: 1}
},
function(err) {
if (err) {
res.send(err);
return;
}
User.update(
{
_id: req.params.user_id,
followers: { $ne: req.decoded.id }
},
{
$push: { followers: req.decoded.id },
$inc: { followersCount: 1}
}
), function(err) {
if(err) return res.send(err);
res.json({ message: "Successfully Followed!" });
}
});
});
這些代碼只設法增加用戶的以下字段,並沒有重複。如何在字段以及其他用戶的關注者字段中同時更新登錄用戶的?
更新的版本:它不斷提取數據。
謝謝你的幫助,它不起作用。它只更新以下和以下計數字段,但不關注追隨者和追隨者計數。 – sinusGob 2015-02-11 13:53:30
檢查更新後的版本,我附上了一張圖片 – sinusGob 2015-02-11 13:56:55
當你嘗試'console.log(user)'時,你得到了什麼? – Khay 2015-02-11 14:17:35