cuando ejecuto mi aplicación con npm run seeder
entonces me enfrenté a este error. He verificado cuidadosamente la conexión de mi base de datos, está bien. Además, he comprobado que mi archivo de modelos de pedidos también está bien. He usado la brújula MongoDB, no hay ningún problema. No sé por qué se buffering timed out .
MongooseError: Operation `orders.deleteMany()` buffering timed out after 10000mssembrador.js
import mongoose from "mongoose"; import dotenv from "dotenv"; import colors from "colors"; import users from "./data/users.js"; import products from "./data/products.js"; import User from "./models/userModel.js"; import Product from "./models/productModel.js"; import Order from "./models/orderModel.js"; import connectDB from "./config/db.js"; dotenv.config(); connectDB(); const importData = async () => { try { await Order.deleteMany(); await Product.deleteMany(); await User.deleteMany(); const createUsers = await User.insertMany(users); const adminUser = createUsers[0]._id; const sampleProducts = products.map((product) => { return { ...product, user: adminUser }; }); await Product.insertMany(sampleProducts); console.log("Data Imported".green.inverse); process.exit(); } catch (error) { console.error(`${error}`.red.inverse); process.exit(1); } }; const DeleteData = async () => { try { await Order.deleteMany(); await Product.deleteMany(); await User.deleteMany(); console.log("Data Deleted".red.inverse); process.exit(); } catch (error) { console.error(`${error}`.red.inverse); process.exit(1); } }; if (process.argv[2] === "-d") { DeleteData(); } else { importData(); }Tengo el mismo problema y acabo de investigar y descubrí que su MongoDB está intentando ejecutar la función User.deleteMany() antes de que se conecte la base de datos.
simplemente ponga una espera antes connectDB() ;
await connectDB();use el siguiente código para conectarse a mongodb
const mongoose = require('mongoose') mongoose.connect(url, { useNewUrlParser: true, useUnifiedTopology: true, useCreateIndex: true }) después de eso, debe eliminar la carpeta node_module y todos los archivos .json y reinstalar la mangosta y usar npm update
Me he enfrentado al mismo problema, pero logré resolverlo.
Entonces, en package.json , en la sección de scripts , agregué:
"data:import": "node backend/seeder", "data:destroy": "node backend/seeder -d",Entonces:
npm run data:import Después de intentarlo un par de veces, aparece el mensaje Data Imported en la consola.
Nota: no he desinstalado ningún node_modules.