我想显示来自json map的数据来表达
这是我的代码
var b = det.map(function(h) {
var soalid = h.id_soal;
var idarray = [ ];
for (var i = 0; i < soalid.length; i++) {
Soal.findOne({
_id: soalid[i]
}, function (err, sol) {
idarray.push(sol);
console.log("ping:" + idarray);
});
}
res.render('ujian/viewDetail',{ujian: iduji, detail: det, soal: idarray, title: 'Lihat form ujian'});
});
我尝试运行到控制台我从json获取数据但没有在express(web)上显示。
我有这个json文件:
ping:{
_id: 58516fc32aeffd103cdda179,
jurusan: 'IPA',
matapelajaran: 'Fisika',
soal: 'agae',
jawabana: 'hjg',
jawabanb: 'h',
jawabanc: 'hbh',
jawaband: 'hbh',
jawabane: 'h',
kuncijawaban: 'hb',
__v: 0
},
{
_id: 585a95167467c5185e2f2ee9,
jurusan: 'IPA',
matapelajaran: 'Fisika',
soal: 'agega',
jawabana: 'hjkbkjb',
jawabanb: 'kjbkjb',
jawabanc: 'kjbkjb',
jawaband: 'kjbkjb',
jawabane: 'kjbkbkj',
kuncijawaban: 'kjbk',
__v: 0
}
答案 0 :(得分:1)
您可以执行单个请求以匹配_id
与$in
的列表:
var b = det.map(function(h) {
Soal.find("_id": {
$in: h.id_soal
}, function(err, solArray) {
if (err) {
console.log(err);
} else {
res.render('ujian/viewDetail', {
ujian: iduji,
detail: det,
soal: solArray,
title: 'Lihat form ujian'
});
}
});
});