使用mongoose时无法访问javascript对象成员

时间:2015-05-18 17:14:15

标签: javascript node.js mongodb mongoose

我使用mongoose库从MongoDB数据库中检索数据,并且我遇到了一个不寻常的问题。我正在使用这些模式:

weak

这是出现问题的代码:

var imgSchema = new mongoose.Schema({
  data: Buffer,
  contentType: String
});


var carsSchema = new mongoose.Schema({
  _owner : { type: mongoose.Schema.ObjectId, ref: 'User' },
  year: Number,
  brand: String,
  model: String,
  name: String,
  carImage: [imgSchema],
  kmTraveled: Number,
  fillups: [fillupsSchema],
  reminders: [remindersSchema]
})

输出如下:

app.get('/api/cars/:carId/image', function(req, res) {
console.log('Returning image...');
Car.findById(req.params.carId)
    .populate('carImage')
    .exec(function(err,car) {
      if(!err) {
        console.log('carImage: ' + car.carImage);
          console.log('contentType: ' + car.carImage.contentType);
          console.log('Data: ' + car.carImage.data);
       } 
...

正如您所看到的, contentType 数据成员位于对象内部,但是当我尝试访问它们时,它们就像它们不存在一样。这可能是什么问题? 我应该补充说,图像实际上存储在一个单独的集合中,就像用户一样,但我没有在汽车架构中包含ref。这可能是问题吗?

编辑:是的,这就是问题,它现在有效。问题被驳回。

0 个答案:

没有答案