Postingan lainnya
membuat api crud di nodejs dan mongodb
Langkah pertama harus install nodejs dulu, bisa download di<a href='https://nodejs.org/en/'>https://nodejs.org/en/</a> Setelah itu download mongodb di <a href='mongodb.org'>mongodb.org</a> Setelah download kita buka CMD atau terminal. setelah itu kita install express-generator dengan cara npm install -g express-generator abis itu kita ketik express administrasi masuk ke directory administrasi cd administrasi buka package.json masukan
{
"name": "administrasi",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node ./bin/www"
},
"dependencies": {
"body-parser": "~1.13.2",
"cookie-parser": "~1.3.5",
"express-session":"*",
"debug": "~2.2.0",
"express": "~4.13.1",
"ejs": "*",,
"mongoose": "*",
"morgan": "~1.6.1",
"serve-favicon": "~2.3.0"
}
}
setelah itu ketik npm install setelah selesai install package terus buka app.js dan ganti
app.set('view engine', 'jade');
dengan
app.set('view engine', 'ejs');
abis itu bikin folder model dan bikin file api.js di dalam folder model tadi dan masukan kode ini
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;
db.on('error', function (err) {
console.log('connection error', err);
});
db.once('open', function () {
console.log('connected.');
});
var Schema = mongoose.Schema;
var PegawaiSchema = new Schema({
nama: String,
no_telepon: String,
alamat: String,
});
var Pegawai = mongoose.model('pegawai', PegawaiSchema)
module.exports = {
Pegawai: Pegawai
}
setelah itu bikin file api.js di folder routes dan isikan kode ini ke api.js
var express = require('express');
var router = express.Router();
var models = require('../model/api');
router.get('/', function(req, res, next){
return res.send('Api Sistem absensi pegawai');
})
// Pegawai ambil data
router.get('/pegawai', function(req, res, next){
models.Pegawai.find({}, function(err, data){
if(err) res.json({'message':'Not Found'})
else res.json(data);
})
})
// Pegawai insert data
router.post('/pegawai', function(req,res,next){
var tambah = new models.Pegawai({
nama: req.body.nama,
no_telepon: req.body.no_telepon,
alamat: req.body.alamat
});
tambah.save(function(err,data){
if(err) res.json({'message':'Failed to insert pegawai'})
else res.json({'message':'Succes to insert pegawai'});
})
})
// Pegawai update data
router.put('/pegawai/:id', function(req, res, next){
var data = {
nama: req.body.nama,
no_telepon: req.body.no_telepon,
alamat: req.body.alamat
}
models.Pegawai.findOneAndUpdate({'_id':req.params.id},data,function(err, data){
if(err) res.json({'message':'Failed to update pegawai'})
else res.json({'message':'Succes to update pegawai'});
})
})
// Pegawai hapus data
router.delete('/pegawai/:id', function(req, res, next){
models.Pegawai.remove({_id:req.params.id},function(err, data){
if(err) res.json({'message':'Failed to remove pegawai'})
else res.json({'message':'succes to remove pegawai'});
})
})
module.exports = router;
setelah itu masuk ke file app.js dan masukan kode ini di atas
var api = require('./routes/api');
// di atas code
var routes = require('./routes/index');
dan masukan code ini di atas
app.use('/api', api);
// di atas code
app.use('/users', users);
Apa bila ada salah mohon di koreksi. saya juga masih belajar tentang nodejs :D
12 Jawaban:
beeh.. lagi pengen belajar node nih, jejak duluu, thanks gan
iya gan, kita sama2 belajar :D nanti kalau applikasi sederha saya udah jadi, saya share SC complit nya
ninggalin jejak dulu ya kak suatu saat akan berguna
Bang saya mau tanya cara jalanin program nya di mana bang
kalau misalkan modelnya bukan pegawai saja bagaimana?
ganti saja yang namanya pegawai sama nama yg km butuhkan
var Schema = mongoose.Schema;
var UserSchema = new Schema({
nama: String,
no_telepon: String,
alamat: String,
});
var User = mongoose.model('user', UserSchema)
module.exports = {
User: User
}
pokok nya di setiap file yg namanya pegawai ganti sama yg km ganti di bagian UserSchema
maaf itu dependenciesnya kurang, untuk mongoosenya
untuk seting mongoosenya saya masih bingung, yang databasenya yang mana, yang tablenya yang mana
sebelumnya maaf banyak pertanyaan hehe, kan untuk viewnya ditutorialnya diganti dari jade jadi ejs itu untuk apa ya? nah pas saya start malah error dan file veiwsnya masih berekstensi jade
untuk views pakai nya index.ejs ejs sendiri sama seperti html biasa, hanya ada berapa code yang kusus buat template ejs