以[对象]而不是值的形式返回子文档
我正在尝试从子文档中检索值。但是子文档将作为[对象]返回。我已经阅读了几个有关此问题的线程,并尝试了下面的代码解决方案,该解决方案仍然给了我[object]而不是值。
MongoDB文档示例:
{
"_id" : ObjectId("5d6b764d95d5d00337ce4a61"),
"city" : "Berlin",
"courses" : [
{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
},
{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
},
{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
},
{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
},
{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
},
{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
}
]
}
“ /课程”的路线
// Get all courses in the db
coursesRoutes.route('/courses').get(function(req, res, next) {
courses.find(function(err, course) {
if (err) {
return next(new Error(err));
}
if (course) {
console.log(course);
// console.log(util.inspect(JSON.stringify(course), true, 10))
}
});
res.json(courses);
});
我为我的模型尝试了以下代码:
// Define collection and schema for todo item
var course = new mongoose.Schema(
{
course_date_start: String,
course_date_end: String,
course_price: String,
course_trainer: String,
date_added: String,
}
);
var courses = new mongoose.Schema(
{
_id: {
type: mongoose.Schema.Types.ObjectId,
required: true
},
city: {
type: String
},
courses: [course],
child: course
},
{
collection: 'courses'
}
);
及以下
var courses = new mongoose.Schema(
{
_id: {
type: mongoose.Schema.Types.ObjectId,
required: true
},
city: {
type: String
},
courses: [{
course_date_start: String,
course_date_end: String,
course_price: String,
course_trainer: String,
date_added: String,
}]
},
{
collection: 'courses'
}
);
按现在的状态访问端点localhost /课程时,我的“错误”控制台日志输出:
{
_id: 5d6b764d95d5d00337ce4a61,
city: 'Berlin',
courses: [ [Object], [Object], [Object], [Object], [Object], [Object] ]
}
预期的控制台日志输出:
{
_id: 5d6b764d95d5d00337ce4a61,
city: 'Berlin',
courses: [{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
},
{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
},
{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
},
{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
},
{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
},
{
"course_date_start" : "2019-09-26",
"course_date_end" : "2019-09-27",
"course_price" : "2750",
"course_trainer" : "Nux Company",
"date_added" : "2019-09-01 07:42:05"
}]
}