我正在嘗試根據id獲取數據,以下是我的模型productsorders productsOrderimport mongoose from 'mongoose';const { ObjectId, String, Number } = mongoose.Schema.Types;const OrderSchema = new mongoose.Schema({ user: { type: ObjectId, ref: "User" }, products: [ { quantity: { type: Number, default: 1 }, product: { type: ObjectId, ref: "Product" } } ], email: { type: String, required: true }, total: { type: Number, required: true }, status: { type: String, required: true, default: 'pending', enum: ["pending", "delivered"] }},{ timestamps: true});export default mongoose.models.Order || mongoose.model("Order", OrderSchema);產品型號:import mongoose from 'mongoose';const { String, Number } = mongoose.Schema.Types;const ProductSchema = new mongoose.Schema({ name: { type: String, required: true }, price: { type: Number, required: true }, productType: { type: String, required: true }, sku: { type: String, unique: true }, description: { type: String, required: true }, mediaUrl: { type: String, required: true }},{ timestamps: true});export default mongoose.models.Product || mongoose.model('Product', ProductSchema);對于所有訂單,查詢如下所示:const orders = await Order.find() .sort({ createdAt: 'desc' }) .populate({ path: "products.product", model: "Product" });// console.log(orders)res.status(200).json({ orders });這個概念是在創建使用產品ID創建的訂單時,我想根據訂單產品ID獲取產品。通過這種方式顯示MongooseError [MissingSchemaError]:模式尚未注冊模型“Product”。我該如何解決這個問題?
獲取 Node.js 和 MongoDB 上基于父數據的引用 ID
慕田峪4524236
2022-08-27 14:06:05