त्रुटि ट्रिगर की जा रही है क्योंकि एक स्कीमा को तत्काल नहीं किया जा सकता है और मॉडल के रूप में उपयोग किया जा सकता है। आपको इसे एक नेवला मॉडल
बनाना होगा सबसे पहले mongoose.model('DocumentName', document)
. के साथ ।
उदाहरण के लिए (मैं वर्तमान प्रोजेक्ट से इसका हिस्सा कॉपी कर रहा हूं, इसलिए यह 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 */ })
})