1.0.6 • Published 6 years ago
mongo-amj v1.0.6
Mongodb Handler
Module for connecting and using mongodb
Installation
npm install mongo-amj --save
Setup
const dsn = "mongodb://localhost:27017/chat";
const db = require('mongo-amj').init(dsn, 'collection');
Usage
Get data from collection
const data = await db.get();
Insert an item
var item = {
user: "Andy",
message: "Testing"
};
await db.insert(item);
Update an item
const msg = await db.get();
const old = msg[1];
var item = {
user: "Andy",
message: "Edited"
};
await db.update(old._id, item);
Remove an item
const msg = await db.get();
const old = msg[1];
await db.delete(old._id);
Reset collection
await db.reset();
Express example, use database with submit form
// Get data from collection and send it to view
router.get("/crud", async (req, res) => {
const data = await db.get();
await db.close();
res.render("crud", {
title: "Crud",
items: data
});
});
// Insert object and return to previous page
router.post("/insert", async (req, res) => {
var item = {
make: req.body.make,
model: req.body.model,
submodel: req.body.submodel,
year: req.body.year
};
try {
await db.insert(item);
res.redirect('back');
} catch (err) {
console.log(err);
}
});
// Update object and return to previous page
router.post("/update", async (req, res) => {
var item = {
make: req.body.make,
model: req.body.model,
submodel: req.body.submodel,
year: req.body.year
};
try {
await db.update(req.body.id, item);
res.redirect('back');
} catch (err) {
console.log(err);
}
});
// Delete an item and return to previous page
router.post("/delete", async (req, res) => {
try {
await db.delete(req.body.id);
res.redirect('back');
} catch (err) {
console.log(err);
}
});
// Reset collection and return to previous page
router.post("/reset", async (req, res) => {
try {
await db.reset();
await db.close();
res.redirect('back');
} catch (err) {
console.log(err);
}
});