【问题标题】:user.find is not a function, in mongoose model in nodejsuser.find 不是函数,在 nodejs 的猫鼬模型中
【发布时间】:2017-09-21 17:01:45
【问题描述】:

user.find 不是函数,我的模型是:

var mongoose=require("mongoose");
var Schema = mongoose.Schema;
var UserSchema = new Schema({
    f_name : String,
    l_name : String
});

module.exports=mongoose.model('user', UserSchema, 'user');

【问题讨论】:

  • 那么你是如何/在哪里使用user的?
  • 显示您的控制器。你在哪里使用 find()

标签: node.js mongoose


【解决方案1】:

模式模型没有任何问题。该错误将出现在您使用 User 的代码中。您在查询中没有提到这一点。

find() 最基本的一点是,find() 函数属于一个模型,而不是一个模式。所以你需要运行一个模型,然后在上面使用 find。

【讨论】:

    【解决方案2】:

    我认为这里有一些声明错误试试这个:

    var mongoose=require("mongoose");
    var Schema = mongoose.Schema;
    var UserSchema = new Schema({
        f_name : {type: String},
        l_name : {type: String}
    });
    
    module.exports=mongoose.model('user', UserSchema);
    

    您可能在实际注册模型之前查询'user.find'

    请发布您如何使用它的确切情景。

    【讨论】:

    • 原来的声明没有问题:在这种情况下你不需要使用type,第三个('user')参数是声明使用哪个MongoDB集合名称模型。
    猜你喜欢
    • 2023-01-28
    • 1970-01-01
    • 2016-04-22
    • 2012-01-14
    • 2020-09-18
    • 1970-01-01
    • 2018-01-15
    • 2019-01-18
    • 2021-07-14
    相关资源
    最近更新 更多