开发者社区 问答 正文

MongoDB 和 Mongoose 查询语句写法有什么不同?

MongoDB 可以这样写
db.getCollection('users').find({})
或者
db.users.find({})
这里的 db 是什么,在代码中应该怎样定义?
在 mongoose 通常这样写:
`var User = require('../models/user')
User.find({})`
怎样在 mongoose 中应该怎样定义 db 才可以也写作
db.users.find({})
这种写法?

展开
收起
蛮大人123 2016-06-14 17:32:56 2324 分享 版权
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    你看看你的代码前面有没有
    `var mongoose = require('mongoose');
    var db = mongoose.connect('mongodb://localhost/tasks');`
    这样的代码啊?db其实就是一个mongoose的连接实例。
    而你的User是一个Model来的吧?你的代码应该差不多是这样的:

    var mongoose = require('mongoose');
    var db = mongoose.connect('mongodb://localhost/tasks');
    var schema = new mongoose.Schema({
        name: String,
        path: String
    });
    module.exports = mongoose.model('User', schema);

    这样你就可以使用:
    User.find({});

    2019-07-17 19:38:21
    赞同 展开评论