Express JS Mongoose (dev ve prod enviroment kullanımı)

npm install --save mongoose

komutu ile projemize mongoose kütüphanesini kuruyoruz.

https://mlab.com adresinden yeni bir Database oluşturuyoruz.

Projemize config adında yeni bir dosya oluşturup için prod.js, dev.js ve key.js dosyaları oluşturuyoruz.

key.js dosyamın içine

if ( process.env.NODE_ENV === 'production') {
module.exports = require('./prod')
} else {
module.exports = require ('./dev')
}
Eğer projem productionda derleniyorsa prod dosyamı açıyor değilse dev dosyamı açıyor.

const keys = require('./config/key');
mongoose.connect(keys.mongoURI);
index.js den de şu şekilde çağırma yaptığım zaman değişikliklerim başarılı oluyor.

Mongoose Schema oluşturma ;

const mongoose = require('mongoose');
const { Schema } = mongoose;

const articleSchema = new Schema({
title: String,
subject: String,
body: String,
metaTag: String,
dateSent: Date
})

mongoose.model('articles', articleSchema);

articles diye db de Collection oluşturacak malum Mongoda tablo yok. Tablo olsaydı Tablomuzun adı articles tablosu olurdu.

Yorum collectionu
const mongoose = require('mongoose');
const { Schema } = mongoose;

const commentSchema = new Schema({
title: String,
subject: String,
body: String,
dateSent: Date,
_user: {type : Schema.Types.ObjectId, ref: 'members'},
_article: {type: Schema.Types.ObjectId, ref:'articles'}
})

mongoose.model("comments", commentSchema);

_user: members collectionundaki id yi alır. Mongoda herbir objenin Id si otomatik olarak oluşturulur.
const mongoose = require('mongoose');
const { Schema } = mongoose;

const memberSchema = new Schema({
googleId: String,
name: String
})
mongoose.model('members', memberSchema);


Daha sonra oluşturduğum bu modellleri index.js de çağırmam gerekir.

const express = require('express');
const mongoose = require('mongoose');

//Mongoose Model Area
const keys = require('./config/key');
require('./models/article');
require('./models/comments');
require('./models/members');
mongoose.connect(keys.mongoURI);
const app = express();


//require('./routes/authRoutes')(app);

const PORT = process.env.PORT || 5500;
app.listen(PORT);

Yorumlar

Bu blogdaki popüler yayınlar

React JS Yazalım 1

Heroku deploy

Laravel & React 4