[英]Method expression is not of Function type (mongoose Model)
我今天遇到了這個錯誤,但沒有找到解決辦法。
const mongoose = require('mongoose'); const userSchema = mongoose.Schema({ name: {type:String, required:false}, birthday: {type:String, required:false}, email: {type:String, required:false}, hobbies: {type:String, required:false}, picture: {type:String, required:false}, }); const User = mongoose.model("User",userSchema); module.exports = User;
如果你 hover over Schema 它會顯示錯誤:“Method expression is not of Function type” 我稍后在這里使用這個 Schema:
const User = require("../models/user"); exports.createUser = (req, res, next) => { const url = req.protocol + "://" + req.get("host"); const user = new User({ name: req.body.name, birthday: req.body.birthday, email: req.body.email, hobbies: req.body.hobbies, picture: req.body.picture }); console.log(user); user.save().then((createdUser) => { console.log(createdUser); res.status(201).json({ message: "User added successfully", }); }).catch((error) => { res.status(500).json({ message: "Creating user failed,"; }); }); };
用戶的控制台日志如下:
{
name: 'Chris',
birthday: 'test',
email: 'test',
hobbies: 'test',
picture: 'test',
_id: new ObjectId("61c0a908e340bcdec1011de5")
}
_id
不應包含新的 ObjectId,而應僅包含括號中的部分。 我希望您能找到解決此問題的方法或關於如何完成的想法。
根據最新的 Mongoose 文檔,如果您這樣重做:
import mongoose from 'mongoose';
const { Schema } = mongoose;
const userSchema = new Schema ({
...
});
這應該可以解決它,因此您正在創建一個 Schema object 的新實例,而不是調用 Schema“方法”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.