node.js - MongoDB find() 什么都不返回

标签 node.js mongodb express mongoose

我正在尝试从 mongodb shell 查询我的数据库以检索所有条目。尽管如此,我的 find() 方法仍未返回任何内容。

这是我正在使用的 Mongoose 模型:

var mongoose = require('mongoose'),
    Schema = mongoose.Schema;

var ArticleSchema = new Schema({
    title: String,
    content: String,
    author: { type: String, default: 'Vlad'},
    postDate: { type: Date, default: Date.now }
});

ArticleSchema.methods.formatTitle = function() {
    var link = this.title.replace(/\s/g, '-');
    return '/article/' + link;
};

ArticleSchema.methods.snapshot = function() {
    var snapshot = this.content.substring(0, 500);
    return snapshot;
};

module.exports = mongoose.model('Article', ArticleSchema);

在浏览器中加载我的 Express.js 应用程序时,我可以毫无问题地显示我使用 API 添加的所有文章。不过,我只想进入 mongo shell 并查询它们。我使用了以下查询:

// blog is the database name (mongodb://localhost:27017/blog)
db.blog.find()

我得到一个空字符串,基本上是控制台中的一个新行。

最佳答案

你的答案就在那里,在问题中:

// blog is the database name (mongodb://localhost:27017/blog)
db.blog.find()

所以 db 已经 指的是正确的数据库。代替 blog,放置集合名称,而不是数据库名称。

db.articles.find()

关于node.js - MongoDB find() 什么都不返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18913533/

相关文章:

node.js - NodeJS - 正在下载的流式视频

java - 如何检索和删除嵌入文档 spring data mongodb

python - 如何关闭 mongodb python 连接?

node.js - NodeJS,如何使用 Express 4 呈现静态 HTML?

javascript - 参数作为路由器 - ExpressJS

javascript - Node JS 中的内部类函数使用抛出错误

node.js - 如何为第 3 方库将 ES6 转换为 ES5?

node.js - native 无服务器与无服务器 Express

javascript - 使用 mongodb 聚合框架计算频率

javascript - 如何从 Firefox 插件连接到 mongodb