,我有一個架構和子文檔的架構是這樣,所以我有這個問題,讓我忙過去的4天數:貓鼬返回JSON列表
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
var ProjectSchema = new Schema({
name: String,
author: String,
category: String,
description: String,
tags: [TagSchema]
});
var TagSchema = new Schema({
name: String,
date: Date
});
mongoose.model('TagSchema', TagSchema);
mongoose.model('Project', Project);
,我想什麼要有一個所有ProjectSchemas的所有標籤的列表,無論我嘗試我要麼NONE或只是最當前的項目。我只是不知道進一步,因爲無論我做什麼,我總是最終失敗。我做錯了什麼,是否沒有找到貓鼬所有的東西?
app.get('/tags.json', function(req, res) {
TagSchema.find({}, function (err, tags){
var json = JSON.stringify(tags);
console.log(json);
tags = tags.map(function (tag) {
return tag.toObject();
});
console.log(json == JSON.stringify(tags));
res.json(json);
});
});
和
app.get('/tags.json', function(req, res) {
Project.find(function (err, projects) {
projects.forEach(function(project){
res.json(project.tags);
});
});
});
和其他任何我想剛回到
[ ]
或出錯了...
(另外我不知道,我怎麼能確保如果我添加一個標籤到一個項目,並且它已經存在,我可以如何保持它不被添加。)
具有確定的一切都像你說幫了我一下,作爲第二碼終於顯示了JSON的標籤,但我發現它只返回最後編輯的項目中的標籤而不是所有存在的標籤。 實際上,如果我添加 console.log(JSON.stringify(project.tags)); 它顯示在控制檯中的所有人。 – 2013-03-05 16:41:00
加入 'var taglist = [];'在那裏 和 'taglist.push(project.tags);' into foreach的技巧如果我在json中呈現taglist數組! – 2013-03-05 16:52:09