当前位置: 首页 > 面试题库 >

mongoose总是返回一个空数组NodeJS

南门星河
2023-03-14
问题内容

我已经尝试过使用find并且findOne都没有返回文档。find是在返回一个空数组findOne被返回nullerr在这两种情况下null也是如此。

这是我的联系:

function connectToDB(){
    mongoose.connect("mongodb://localhost/test"); //i have also tried 127.0.0.1
    db = mongoose.connection;
    db.on("error", console.error.bind(console, "connection error:"));
    db.once("open", function callback(){
        console.log("CONNECTED");
    });
};

这是我的架构:

var fileSchema = mongoose.Schema({
    hash: String,
    type: String,
    extension: String,
    size: String,
    uploaded: {type:Date, default:(Date.now)},
    expires: {type:Date, default:(Date.now()+oneDay)}
});
var Model = mongoose.model("Model", fileSchema);

我的查询在这里:

Model.find({},function(err, file) {
    console.log(err)
    console.log(file);  
});

我可以将内容上传到数据库,并通过RockMongo进行查看,但之后无法获取它们。这是我第一次使用MongoDB,因此我认为我只是缺少一些基础知识。向正确方向的任何推动都是很棒的!


问题答案:

mongoose.model建立模型所绑定的集合的名称的调用,默认值为复数的小写模型名称。因此,使用您的代码将是'models'。要将模型与files集合一起使用,请将该行更改为:

var Model = mongoose.model("Model", fileSchema, "files");

要么

var Model = mongoose.model("file", fileSchema);


 类似资料:
  • 我是JPCAP的新手。我在用 eth0链路Encap:Ethernet HWaddr 18:A9:05:CB:8D:FB 上行广播多播MTU:1500度量:1个RX数据包:0个错误:0个丢弃:0个溢出:0帧:0个TX数据包:0个错误:0个丢弃:0个溢出:0载波:0个冲突:0个TX队列n:1000个RX字节:0(0.0B)TX字节:0(0.0B)中断:17 lo链接Encap:本地环回 inet A

  • 我有两个模型;一个用于用户,另一个用于学习组。每个StudyGroup都有一个唯一的字段。用户模型有一个studyGroups字段,它是字符串的数组。一个用户可以加入多个学习组。 用户模型

  • 我试图实现Mockito来测试一个特定的方法,但是。然后返回(…)似乎总是返回空对象,而不是我想要的: 切: Spring配置: 莫基托试验方法: 系统输出: 这里发生的事情是,当我运行测试时,在上面标有//PROBLEM的CUT中的行上,serviceSolutions对象为空。我的愿望是让那个对象从我的测试方法中填充我的“无效服务响应”对象。从我的System.out.println的输出来看

  • 问题内容: 我有两个模型,用户模型和时间表,我想用$ lookup 和猫鼬把这两个模型结合起来。 用户(型号) 时间表(型号) 现在我的查询使用猫鼬: 用户汇总 我的查询结果是一个空的array(),如下所示: 查询结果: 我不知道为什么,但是查询结果是一个 空数组 ,我试图使用$ unwind和$ match,但也无法正常工作。 编辑: 用户集合 时间表的收集 问题答案: 猫鼬在创建时将集合名称

  • 我正在使用AWS Amplify在iOS和Android上构建一个应用程序。我有一个lambda表达式,它接受经度、纬度、用户名和对象id,并返回一个布尔值,告诉我用户是否在物理上接近该对象。 它完美地工作在我的iOS应用程序,我得到或取决于用户位置,但在Android上,我总是得到作为响应。 这是触发lambda的函数: 当我打印日志的参数发送到lambda一切正常,正确的值被发送。 这是我的回

  • 问题内容: 我有一些Python代码基本上看起来像这样: 奇怪的是: print(my_list) 打印出正确的内容。但是,第二个打印该函数返回值的打印语句始终打印“无”。即使我用 return(“ abc”) 替换普通的return语句,它仍然是None。 由于该变量的内容似乎在return语句前一行是正确的,所以我不知道从哪里开始调试。是否有可能导致此问题的常见问题? 问题答案: 这是发生了什