TypeError 子类别不是构造函数

TypeError Subcategory is not a constructor

我正在创建有史以来最简单的模式,但我遇到了这个烦人的错误,我不确定为什么。也许我只需要一双新的眼睛就能看到明显的错误。我得到的错误是:

TypeError Subcategory is not a constructor

我所有的模式都是这样创建的,之前没有遇到过问题。

我的猫鼬模式:

const mongoose = require("mongoose");

const subcategorySchema = new mongoose.Schema({
  name: {
    type: String,
    minlength: 5,
    maxlength: 255
  }
});

const Subcategory = mongoose.model("Subcategory", subcategorySchema);

module.exports = Subcategory;

控制器:

const { Subcategory } = require("../models/subcategoryModel");

// add subcategory
exports.postSubcategory = async (req, res) => {
  let subcategory = new Subcategory({
    name: req.body.name
  });
  subcategory = await subcategory.save();
  res.status(200).json({
    status: "success",
    data: {
      data: subcategory
    }
  });
};

路线:

const express = require("express");
const subcategoryController = require("../controllers/subcategoryController");

const router = express.Router();

router.get("/", subcategoryController.getSubcategories);
router.post("/", subcategoryController.postSubcategory);

module.exports = router;

因为您要像这样导出 Subcategory

module.exports = Subcategory;

您需要像下面这样导入它:

const Subcategory = require("../models/subcategoryModel");