node.js - 你能从 mongo 访问 mongoose 创建的数据库吗?

标签 node.js mongodb express mongoose

noob node.js、Express 和 MongoDB,在 Ubuntu 14 上运行;我通过以下方式在express/nodejs应用程序数据库中创建了一个 Mongoose :

var mongoose = require('mongoose');
var express = require('express');
var app = express();
...
mongoose.connect("mongodb://localhost/firstExpress");

var UserSchema = new mongoose.Schema({
  name: String,
  email: String,
  age: Number 
});

var Users = mongoose.model('Users', UserSchema);

app.post('/users', function(req, res){
  var b = req.body;
  new Users({
    name: b.name,
    email: b.email,
    age: b.age
  }).save(function(err, userDoc){
    if (err) res.json(err);
    res.redirect('/users/' + userDoc.name);
  });
});

app.get('/users/:name', function(req, res){
  Users.find({ name: req.param.name }, function(err, docs){
    if (err){ 
      res.json(err);
    } else {
      res.json(doc[0]);
    } 
  });
});

发出发布请求可以正常工作,并将用户添加到用户库中。有没有办法从 shell 中查看 mongo 中的这个数据库?

即来自

sudo mongo --smallfiles

当我运行它并执行命令时

show dbs

我看不到 Express 应用程序创建的数据库,也无法在任何数据库中包含的任何集合中看到它。然而,当我重新启动 Node 应用程序并且不发出发布请求,而是对用户调用 get 时,我会得到之前创建的用户列表。有人可以建议一下吗?

最佳答案

给定连接 URL mongodb://localhost/firstExpress,我可以假设您的数据库名称是 firstExpress

因此,只需使用 mongo firstExpress 登录您的 mongo 服务器即可。要查看您的收藏集,请使用显示收藏集,您就会看到它们。

关于node.js - 你能从 mongo 访问 mongoose 创建的数据库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23946362/

相关文章:

node.js - 用于视频编码的单独服务器?

javascript - 使用编码为 utf8 的 readFileSync 在 jade 电子邮件模板中呈现 HTML

javascript - Bcrypt 不散列

javascript - 在 dotcloud 上托管 nodejs 服务器

node.js - 在 Sequelize.js 中添加多个关联

mongodb - 将数据移出 Hive 并移入 MongoDB 的最有效方法是什么?

mongodb - 如何更改分片键

javascript - ForbiddenError : invalid csrf token, express js

javascript - bluebird promise ——履行顺序不正确?

node.js - 如何在有限制的情况下运行并行进程?