recherche

Maison  >  Questions et réponses  >  le corps du texte

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

MongoDB 可以这样写

db.getCollection('users').find({})

或者

db.users.find({})

这里的 db 是什么,在代码中应该怎样定义?

在 mongoose 通常这样写:

var User = require('../models/user')
User.find({})

怎样在 mongoose 中应该怎样定义 db 才可以也写作

db.users.find({})

这种写法?

世界只因有你世界只因有你2793 Il y a quelques jours795

répondre à tous(3)je répondrai

  • 黄舟

    黄舟2017-04-28 09:06:30

    (⊙o⊙)… Regardez le devant de votre code pour voir s'il y a quelque chose

    var mongoose = require('mongoose');
    var db = mongoose.connect('mongodb://localhost/tasks');

    Un tel code ? dbEn fait, il s'agit d'une instance de connexion mangouste.

    Et votre User vient d'un modèle, non ? Votre code devrait ressembler à ceci :

    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);

    Vous pouvez donc utiliser :

    User.find({});

    répondre
    0
  • 漂亮男人

    漂亮男人2017-04-28 09:06:30

    db est l'objet d'opération de base de données de l'opération en cours, qui fait référence à la base de données basculée à l'aide de use db

    répondre
    0
  • 给我你的怀抱

    给我你的怀抱2017-04-28 09:06:30

    module.exports = mongoose.model('User', schema);

    Cela devrait ressembler à ce qui a été dit ci-dessus. Votre fichier modèle est écrit comme ci-dessus. Dans ce cas, il ne peut être écrit que comme suit.

    var user = require('../model/user');
    user.find({})

    Mais si vous utilisez mangouste, vous devez l'écrire sous la forme db.users.find({}). Vous pouvez le modifier dans le fichier modèle :

    .
    //model
    module.exports = {
        'users' : mongoose.model('User', schema)
    }
    
    //api
    var db = require('../model/user');
    db.users.find({})

    répondre
    0
  • Annulerrépondre