【问题标题】:Mongoose query returns empty arrayMongoose 查询返回空数组
【发布时间】:2018-06-12 03:27:04
【问题描述】:

我正在使用 Express 在 Mongo 集合中执行查找操作并返回结果。我知道集合中有数据,但结果数组返回为空。我怀疑这是架构的问题,但无法弄清楚是什么。想法?

路线:

const PlotStatus = require('../models/plotStatus');

exports.plotStatuses = async (req, res) => {
    const plotStatus = await PlotStatus.find({
        company: req.user.companyCode
    }).lean();
    if (!plotStatus) {
        throw new Error('Plot Statuses not found');
    } else {
        res.send(plotStatus);
    }
};

型号:

const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const plotStatusSchema = new Schema(
    {
        recordDate: Date,
        blockName: String,
        growerName: String,
        company: String,
        variety: String,
        planted: Number,
        region: String,
        yieldInKG: Number,
        currentRipeness: String,
        nextStage: String,
        timeToNextInDays: Number,
        status: Number
    },
    { bufferCommands: false },
    { collection: 'plotStatuses' }
);

const ModelClass = mongoose.model('plotStatus', plotStatusSchema);

module.exports = ModelClass;

示例图状态:

{
    "_id" : ObjectId("stringhere"),
    "recordDate" : ISODate("2018-01-02T12:50:51.236Z"),
    "blockName" : "name",
    "growerName" : "grower's name",
    "company" : "mycompany",
    "variety" : "myvariety",
    "planted" : 2010,
    "region" : "myregion",
    "yieldInKG" : 960,
    "changeInPcnt" : -1.6,
    "currentRipeness" : "ripeness",
    "nextStage" : "nextstage",
    "timeToNextInDays" : 42,
    "status" : 0
}

【问题讨论】:

    标签: mongodb mongoose mongoose-schema


    【解决方案1】:

    好的,知道了。

    通常,Mongoose 从模型名称推断集合名称,但您可以显式传递它。显然, plotStatus => plotStatuses 是一座太过分的桥梁。这修复了它:

    const ModelClass = mongoose.model(
        'plotStatus',
        plotStatusSchema,
        'plotStatuses'
    );
    

    【讨论】:

      猜你喜欢
      • 2019-11-30
      • 2019-08-29
      • 2015-04-18
      • 1970-01-01
      • 2017-11-13
      • 1970-01-01
      • 2015-12-19
      • 2023-04-03
      • 2013-12-17
      相关资源
      最近更新 更多