簡體   English   中英

貓鼬查詢集合不返回結果?

[英]mongoose query to collection not returning results?

我有一個這樣定義的模型:

game.js

var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var Game = new Schema({
  game: String,
  lobby_size: Number });

module.exports = mongoose.model('games', Game, 'game_list');

我正在嘗試獲取集合“ game_list”中的所有條目並將它們打印到console.log進行調試

games.js

var express = require('express');
var router = express.Router();
var mongoose = require('mongoose');
var Games = require('../models/game.js');

router.get('/list', function(req, res) {
  Games.find({}, function(err, docs) {
    console.log(docs);
  });
});

module.exports = router;

這是我連接數據庫的代碼:

app.js

// connect mongoose to db
mongoose.connect('mongodb://localhost/angulobby');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error: '));
db.on('open', function() {
  console.log('connected to database.');
});

當我在mongoDB shell中運行db.game_list.find({}) ,我得到:

{ "_id" : ObjectId("595541d1d01f064117614a28"), "game" : "Counter-Strike: Global Offensive", "lobby_size" : 5 }

所以我知道集合已填充,但是當我運行/list api時,調用console.log僅打印[]

預先感謝大家的幫助!

找到解決方案。 在我的本地mongoDB服務器中,我沒有正確地將數據庫設置為/angulobby數據庫,因此它沒有收到集合中的信息。 發出的命令use angulobby修復了,現在我可以收到正確的查詢響應。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM