Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

303
Visualizações
ReferenceError: Cannot access 'User' before initialization mongoose

this error is shown by mongoose Cannot access 'User' before initialization at order.model.js:6:52

but User is already there

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;

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

No need to import User model, try using following code

user: { type: mongoose.SchemaTypes.ObjectId, ref: 'User' },
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda