【发布时间】:2019-01-08 09:56:03
【问题描述】:
我在 MongoDB 数据库中有一个嵌套数组,我希望使用 Jade 和 Express 在前端显示。
我在显示它们时遇到了一些问题:
这是我希望显示的嵌套项:
MongoDB:
{
"_id" : ObjectId("5c3343913d1e1323111fce6f"),
"title" : "Projecten",
"__v" : 0,
"sub_items" : [
{
"title" : "item1"
},
{
"title" : "item2"
}
]
}
猫鼬模型:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var menuItems = new mongoose.Schema({
sub_items : {
title: String
}
}, {collection: 'menu_items'});
module.exports = mongoose.model("menu_items", menuItems);
我这样用 Express 发布嵌套项目:
postController.updateSubItems = function(req,res,item) {
var id = req.body.id;
var saveData = {
title: req.body.sub_item
};
item.update({_id: id}, {$addToSet:{sub_items: saveData}}, (err, result) => {
});
};
玉中这样显示:
each item in data
p #{item.sub_items}
最终结果是这样的:
item1,item2
就像一个字符串,虽然我想像单个项目一样显示它们
【问题讨论】:
-
'sub_items' 本身就是一个数组。尝试循环通过 sub_items 打印标题。
-
你有一个例子我怎么能做到这一点?我必须使用 Jade 来循环还是使用 Express?
-
我没用过Jade,但我的意思是循环中的循环