提问人:alireza 提问时间:8/27/2023 最后编辑:alireza 更新时间:8/27/2023 访问量:28
Seeder 不是构造函数 mongoose-data-seed nextJs
Seeder is not a constructor mongoose-data-seed nextJs
问:
我有使用 nextjs 和猫鼬的网站。
为了获得种子数据,我使用了 mongoose-data-seed 插件
现在我在运行命令 md-seed run 时出现错误
错误是: 播种结果: × 关于播种机 TypeError:Seeder 不是构造函数
md-种子配置.js
const mongoose = require("mongoose")
const {AboutSeeder} = require("./seeders/about.seeder")
const mongoURL = process.env.MONGODB_URI || 'mongodb+srv://***:**@***.3sxb0yu.mongodb.net/***?retryWrites=true&w=majority';
const seedersList = {
AboutSeeder
};
const connect = async () =>
await mongoose.connect(mongoURL, { useNewUrlParser: true });
const dropdb = async () => mongoose.connection.db.dropDatabase();
module.exports = {seedersList, connect,dropdb}
播种机/about.seeder.js
const { Seeder } = require('mongoose-data-seed');
const { LandingAboutModel } = require('../models/landingaboutModel');
const data = [{
pretitle: "pretitle",
title: "title",
description: "description."
}];
class AboutSeeder extends Seeder {
async shouldRun() {
return LandingAboutModel.countDocuments().exec().then(count => count === 0);
}
async run() {
return LandingAboutModel.create(data);
}
}
module.export = {AboutSeeder};
模型/登陆关于模型:.js
const { Model, models, model } = require("mongoose");
const { Document, Schema } = require("mongoose");
const landingSchema = new Schema({
pretitle: {
type:String,
required: true,
trim:true,
minlength: 3
},
title: {
type:String,
required: true,
trim:true,
minlength: 3
},
description:{type:String,
required: true,
trim:true,
minlength: 20},
})
const LandingAboutModel = models.Feedback || model("landingabout", landingSchema)
module.export = {LandingAboutModel}
我在 package.json 中添加了一些 babel 配置,但问题没有解决。
package.json
{
"name": "***",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev",
"start": "next start",
"build": "next build",
"lint": "next lint"
},
"dependencies": {
"babel-plugin-add-module-exports": "^1.0.4",
"eslint": "8.44.0",
"eslint-config-next": "13.4.9",
"mongoose": "^7.4.3",
"mongoose-data-seed": "^2.1.6",
},
"mdSeed": {
"seedersFolder": "./seeders"
},
"devDependencies": {
"@babel/cli": "^7.22.10",
"@babel/core": "^7.22.11",
"@babel/preset-env": "^7.22.10"
},
"babel": {
"presets": [
"@babel/preset-env"
]
}
}
答: 暂无答案
评论