sql >> Database >  >> NoSQL >> MongoDB

Kan mangoest-schema niet instantiëren:object is geen functie

De fout wordt geactiveerd omdat een schema niet kan worden geïnstantieerd en als model kan worden gebruikt. Je moet er een mangoestmodel van maken eerst met mongoose.model('DocumentName', document) .

Bijvoorbeeld (ik kopieer een deel hiervan van een huidig ​​project, dus het is ES6):

// user.js
import mongoose from 'mongoose'

let userSchema = mongoose.Schema({
    password: String,
    username: String
})

userSchema.methods.setUp = function (username, password) {
    this.username = username
    this.password = password
    return this
}

export let User = mongoose.model('User', userSchema)
export default User

// routes.js
import { User } from './models/user'

router.post('/newuser', function (req, res) {
    new User()
    // note the `setUp` method in user.js
    .setUp(req.params.username, req.params.password)
    .save()
    // using promises; you can also pass a callback
    // `function (err, user)` to save
    .then(() => { res.redirect('/') })
    .then(null, () => /* handle error */ })
})



  1. Indirecte wijziging van overbelaste eigenschap App\Dossier::$programma heeft geen effect

  2. Wat is de basisarchitectuur van een node.js + mongodb-app?

  3. Hoe een matrixwaarde in Mongoose bij te werken

  4. MongoDB-relaties voor objecten