2016-12-05 11 views
0

私は最初のMEAN Stackアプリケーションを構築しようとしています。私は自分のDBに挿入をチェックするためにpostmanを使用していますが、 "user created!" MongoLabのDB。コレクションにドキュメントが挿入されていません。ここに私のコードだ:MongooseがMongoLabに挿入されない

ここに私のレポは、あなたがそれを必要とする場合には:https://github.com/pevargasg/joberistyNode

app.js

var express = require('express') 
var app = express() 
var morgan = require('morgan'); 
var mongoose = require('mongoose'); 
var bodyParser = require('body-parser'); 

//My one modules 
var User = require('./app/models/user'); 
var Company = require('./app/models/company'); 

//Middleware 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({extended: true})); 
app.use(morgan('dev')); 

//Connection to DB 
//mongoose.Promise = global.Promise; 
//Feel free to use your own mongoLab link below for testing purposes 
mongoose.connect('mongodb://user:[email protected]:19768/jobersity',function(err){ 
    if(err){ 
     console.log("Not connection to DB" + err); 
     throw err; 
    } 
    else{ 
     console.log("Connected to DB"); 
    } 
}); 
//Routes 
/*app.get('/', function (req, res) { 
    res.send('Hello World!') 
})*/ 

//Creating Users 
app.post('/users',function(req,res){ 
    //res.send('test'); 
    var user = new User();  
    user.username = req.body.username; 
    user.password = req.body.password; 
    user.email = req.body.email; 
    /*user.firstName = req.body.firstName; 
    user.lastName = req.body.lastName;  
    user.major = req.body.major;*/ 

    //Save user 
    user.save(); 
    res.send('user created!'); 


}); 

user.jsの

var mongoose = require('mongoose'); 
var Schema = mongoose.Schema; 

//Table for usersSchema 
var UserSchema = new Schema({ 
    username:{type: String, lowercase: true, required: true, unique: true}, 
    password:{type: String, required: true}, 
    email:{type: String, lowercase: true, required: true, unique: true}, 
    /*firstName: {type: String, required: true}, 
    lastName: {type: String, required: true}, 
    major: {type: String, required: true}, 
    jobsApplied:[{ 
     title: String, 
     description: String, 
     position: String 
    }]*/ 
}); 

module.exports = mongoose.model('User', UserSchema); 
+0

コードが実際に動作しています。間違った方法でテストしていました。ありがとう! –

答えて

1

あなたのコードは、私はそれを実行すると、正常に動作し。私は予告をした

2つのこと:

  1. 慣れていないようだときあなたのpackage.jsonファイルがmongojsが含まれています。 mongoooseパッケージを使用すると、npm installに電話するときに必要なmongodbの依存関係が引き継がれます。

  2. 接続文字列は、リポジトリのクリアテキストに含まれています。設定ファイルを使って機密情報をアプリにインポートする習慣を身につけてみてください。

たとえば、設定ファイルを作成します。 ./config/db.js

module.exports = { 
    'uri' : 'mongodb://user:[email protected]:port1/dbname' 
} 

次に、あなたのアプリにファイルをインポートします。

var dbConfig = require('./config/db.js'); 

変数は、あなたのコード内で使用することを使用することができます。最後に

mongoose.connect(dbConfig.uri, function(err){ ... }) 

、このファイルを追加します(./config/db.js )から.gitignoreに変更してください。

関連する問題