3

我是服务器端 javascipt 的新手。我从 mean.io 开始。这几天对nodejs、express、mongodb有了一些了解。我有我的 mean.io 应用程序,但我不知道连接到 mongodb 并从我的 js 文件中查询它的正确方法是什么。
是否有可以帮助我从服务器端 javascript 文件使用 mongodb 的指南/博客?
我想要的只是存储一些数据 mongodb 并在以后获取它。

4

2 回答 2

3

我找不到与 mean.io 相关的内容,但以下几个链接帮助我开始使用 mean.io。

http://cwbuecheler.com/web/tutorials/2013/node-express-mongo/
https://www.youtube.com/watch?v=AEE7DY2AYvI
https://www.youtube.com/watch?v=5e1NEdfs4is

编辑:
过去几天我一直在努力,通过测试和学习,我能够让事情为我工作。我会分享到目前为止我所知道的一切。

  • 所以mean.io使用mongooseODM连接到mongodb。
  • mean.io会自动连接到您的数据库。您可以在 中配置数据库名称development.js db: 'mongodb://localhost/myDB'。所以你不必担心连接到 mongoDB。您只需要使用mongod.

如何使用猫鼬?

要用于mongoose连接到 mongoDB,您需要构建模式。您可以在 myApp/app/models目录中执行此操作,因为它们代表模型。

示例模型文件user.js

var mongoose = require('mongoose');  
var Schema = mongoose.Schema;  
var userSchema = new Schema({  
    name: String,
    email: String,
    DOB  : Date,
    address: {  
              house_no: String,  
              street: String  
             }  
});  

module.exports = mongoose.model('tbl_user',userSchema);  

注意:-tbl_user将存储tbl_userS在 DB 中。

如何将数据保存到mongoDB?

人们通常save会对控制器中的数据库进行操作。下面我展示了如何做到这一点。
为了让所有控制器都可以使用模型,需要在 server.js 中编写这段代码,以便在服务器启动期间注册所有模型。或者,使用 . 导入单个模型require('tbl_user')

Server.js:-

var models_path = __dirname + '/app/models';
    var arrFiles = fs.readdirSync(models_path);
    arrFiles.forEach(function(file){
        if(file.indexOf('.js') > 0){
            require(models_path + '/' + file);
        }

    });

控制器代码myApp/app/controllers/myController.js

var mongoose = require('mongoose');
var jsonEntry = {'name':'Mady', 'email':'xyz@xyz.com', 'address':{'house_no':12N, 'stree':'abc'}};
var User = mongoose.model('tbl_user');
var user = new User(jsonEntry);
user.save();  

上面的代码将tbl_users在 mongoDB 中创建和更新集合。

于 2014-08-28T09:18:05.707 回答
3

默认情况下,您应该会看到mean-devmongodb 中有一个集合。我认为熟悉 mongo 和 mean 的最好方法是玩代码(例如,文章包)。在里面/packages/article/system/,您将看到博客示例是如何工作的。

这对我很有用。

于 2014-08-29T01:10:53.650 回答