【问题标题】:ReferenceError: Cannot access 'User' before initialization mongooseReferenceError:在初始化猫鼬之前无法访问“用户”
【发布时间】:2022-01-19 18:27:51
【问题描述】:

这个错误由​​猫鼬显示 在 order.model.js:6:52 初始化之前无法访问“用户”

但用户已经在那里

order.js

import mongoose from 'mongoose';
import Product from './product.model.js';
import User from './users.model.js';

const orderSchema = new mongoose.Schema({
    user: { type: mongoose.SchemaTypes.ObjectId, ref: User },
    products: [{ type: mongoose.SchemaTypes.ObjectId, ref: Product }],
    status: { type: String, required: true },
});

const Order = mongoose.model('Order', orderSchema);

export default Order;

user.js

import mongoose from 'mongoose';
import Order from './order.model.js';

const userSchema = new mongoose.Schema({
    fname: { type: String, required: true },
    lname: { type: String, required: true },
    email: { type: String, required: true },
    phone: { type: Number, required: true },
    password: { type: String, required: true },
    orders: [{ type: mongoose.SchemaTypes.ObjectId, ref: Order }],
});

const User = mongoose.model('User', userSchema);

export default User;

【问题讨论】:

    标签: javascript node.js mongodb express mongoose


    【解决方案1】:

    不需要导入用户模型,试试下面的代码

    user: { type: mongoose.SchemaTypes.ObjectId, ref: 'User' },
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-29
      • 2021-09-10
      • 2020-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-16
      相关资源
      最近更新 更多