Javascript 如何修复';。create不是一个函数';猫鼬中的错误
我正试图初始化seed.js文件,以便在数据库中启动一些内容,但当我运行Javascript 如何修复';。create不是一个函数';猫鼬中的错误,javascript,mongoose,Javascript,Mongoose,我正试图初始化seed.js文件,以便在数据库中启动一些内容,但当我运行节点bin/seed.js时,我不断得到“类型错误:名人.create不是一个函数” 我尝试重新安装了mongoosenpm软件包,我一直在寻找类似的问题,经过一段时间的寻找,我觉得一切都很好,我找不到问题 这是我的相关app.jscode mongoose .connect('mongodb://localhost/cinema', { useNewUrlParser: true }) .then(x =&
节点bin/seed.js
时,我不断得到“类型错误:名人.create不是一个函数”
我尝试重新安装了mongoose
npm软件包,我一直在寻找类似的问题,经过一段时间的寻找,我觉得一切都很好,我找不到问题
这是我的相关app.js
code
mongoose
.connect('mongodb://localhost/cinema', { useNewUrlParser: true })
.then(x => {
console.log(`Connected to Mongo! Database name: "${x.connections[0].name}"`)
})
.catch(err => {
console.error('Error connecting to mongo', err)
})
这是我的名人.model.js
const Schema = mongoose.Schema
const celebritySchema = new Schema(
{
name: String,
occupation: String,
catchPhrase: String
},
{ timestamps: true }
)
const Celebrity = mongoose.model('Celebrity', celebritySchema)
module.exports = Celebrity
这是我的种子
const Celebrity = '../models/celebrity.model.js'
const dbName = 'cinema'
mongoose.connect(`mongodb://localhost/${dbName}`, { useNewUrlParser: true })
const celebrities = [
{
name: 'Alex',
occupation: 'Parado',
catchPhrase: 'Teo ayudameeee'
}
]
Celebrity.create(celebrities, err => {
if (err) {
throw err
}
console.log(`Created ${celebrities.length} celebrities`)
mongoose.connection.close()
})
这就是错误所在
Celebrity.create(celebrities, err => {
^
TypeError: Celebrity.create is not a function
at Object.<anonymous> (/home/nacho/Ironhack/week4/day5/de/lab-mongoose-movies/starter-code/bin/seed.js:31:11)
at Module._compile (internal/modules/cjs/loader.js:816:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:827:10)
at Module.load (internal/modules/cjs/loader.js:685:32)
at Function.Module._load (internal/modules/cjs/loader.js:620:12)
at Function.Module.runMain (internal/modules/cjs/loader.js:877:12)
at internal/main/run_main_module.js:21:11
名人。创建(名人,err=>{
^
TypeError:名人。创建不是一个函数
在对象上。(/home/nacho/Ironhack/week4/day5/de/labmongoose movies/starter code/bin/seed.js:31:11)
at模块编译(内部/modules/cjs/loader.js:816:30)
在Object.Module.\u extensions..js(internal/modules/cjs/loader.js:827:10)
at Module.load(内部/modules/cjs/loader.js:685:32)
at Function.Module._load(内部/modules/cjs/loader.js:620:12)
位于Function.Module.runMain(内部/modules/cjs/loader.js:877:12)
在internal/main/run_main_module.js:21:11
我希望种子在我的数据库中创建1个值,但我得到错误您需要在种子文件中创建模型文件,如下所示:
Celebrity.create(celebrities, err => {
^
TypeError: Celebrity.create is not a function
at Object.<anonymous> (/home/nacho/Ironhack/week4/day5/de/lab-mongoose-movies/starter-code/bin/seed.js:31:11)
at Module._compile (internal/modules/cjs/loader.js:816:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:827:10)
at Module.load (internal/modules/cjs/loader.js:685:32)
at Function.Module._load (internal/modules/cjs/loader.js:620:12)
at Function.Module.runMain (internal/modules/cjs/loader.js:877:12)
at internal/main/run_main_module.js:21:11
const Celebrity = require('../models/celebrity.model.js');