Подключение Node.js к MongoDB с помощью монаха
Я пытаюсь сохранить данные, написанные в jade, для хранения в MongoDB с использованием monk, но он не хранит данные и не выдает ошибку
подключение к коду MongoBD: (p1 - имя базы данных)
var mongo = require('mongodb');
var monk = require('monk');
var db = monk('localhost:27017/p1');
Код index.js для хранения в БД:
/* GET New User page. */
router.get('/addnew', function(req, res) {
res.render('addnew', { title: 'Add New Theatre' });
});
/* POST to Add User Service */
router.post('/addnew', function(req, res) {
// Set our internal DB variable
var db = req.db;
// Get our form values. These rely on the "name" attributes
var theatrename = req.body.TheatreName;
var screen = req.body.Screen;
var latitude = req.body.Latitude;
var longitude = req.body.Longitude;
var city = req.body.City;
// Set our collection (Theatre is the name of the collection)
var collection = db.get('Theatre');
// Submit to the DB
collection.insert({
"TheatreName" : theatrename,
"Screen" : screen,
"Latitude" : latitude,
"Longitude" : longitude,
"City" : city,
}, function (err, doc) {
if (err) {
// If it failed, return error
res.send("Not adding into db.");
}
else {
// And forward to success page
res.send("Theatrelist");
}
});
});
module.exports = router;
Это мой нефритовый код:
extends layout
block content
h1= title
form#formAddUser(name="adduser",method="post",action="/adduser")
p Thearte Name:
input#inputName(type="text", name="ThearteName")
br
p Screen :
input#inputScreen(type="text", name="Screen")
br
p Latitude:
input#inputUserLat(type="text", name="Latitude")
br
p Longitude:
input#inputlong(type="text", name="Longitude")
br
p City:
input#inputCity(type="text", name="City")
br
br
button#btnSubmit(type="submit") submit
1 ответ
Если бы я был вами, я постараюсь сделать это: покажите в консоли, что переменные из "req.body.VAR" отправляются правильно. Например
router.post('/addnew', function(req, res) {
console.log(req.body.Screen);
Затем я попытаюсь добавить некоторые данные в BD, например:
collection.insert({
"TheatreName" : "Fakename",
"Screen" : "Fakescreen",
"Latitude" : "0",
"Longitude" : "0",
"City" : "Fakecity",
}, function (err, doc) {
if (err) {
// If it failed, return error
res.send("Not adding into db.");
}
else {
// And forward to success page
res.send("Theatrelist");
}
});
Если вы видите результат в вашем BD, все в порядке (в остальном, в соединении или что-то подобное).
Я надеюсь, что мой ответ поможет вам!