Skip to content

Commit b881c7f

Browse files
committed
Added remove
1 parent 6a5ba4e commit b881c7f

5 files changed

Lines changed: 53 additions & 8 deletions

File tree

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
"dependencies": {
2020
"express": "^4.1.1",
2121
"jade": "^1.3.1",
22-
"mongodb": "^1.4.3"
22+
"mongodb": "^1.4.3",
23+
"body-parser": "^1.0.2"
2324
}
2425
}

routes/index.js

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,31 @@ module.exports = function (app, db) {
1717
});
1818
});
1919
});
20+
21+
app.post('/user/remove', function (req, res) {
22+
var id = req.body.id;
23+
db.collection('nodelabs-users', function (err, collection) {
24+
collection.remove({ _id: ObjectID(id) }, function (err, numRemoved) {
25+
res.redirect('/');
26+
});
27+
});
28+
});
29+
30+
app.post('/user/save', function (req, res) {
31+
var id = req.body.id;
32+
db.collection('nodelabs-users', function (err, collection) {
33+
34+
var saveQuery = {
35+
$set: {
36+
firstName: req.body.firstName,
37+
lastName: req.body.lastName,
38+
emailAddress: req.body.emailAddress
39+
}
40+
};
41+
42+
collection.update({ _id: ObjectID(id) }, saveQuery, function (err) {
43+
res.redirect('/user/' + id);
44+
});
45+
});
46+
});
2047
};

server.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
var express = require('express');
22
var app = express();
3-
3+
var bodyParser = require('body-parser');
44
var mongodb = require('mongodb');
55
var Db = mongodb.Db;
66
var Server = mongodb.Server;
@@ -10,6 +10,7 @@ var db = new Db('nodelabs-users', server, { safe: true });
1010

1111
app.engine('jade', require('jade').__express);
1212
app.use(express.static('public'));
13+
app.use(bodyParser());
1314

1415
require('./routes/index.js')(app, db);
1516

views/index.jade

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
extends layout
22

33
block content
4+
div Total Users:
5+
span= " " + users.length
6+
47
table
58
tr
69
th Name

views/user.jade

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,23 @@
11
extends layout
22

33
block content
4-
ul.details
5-
li= user.firstName + " " + user.lastName
6-
li= user.emailAddress
4+
form(method="POST" action="/user/save")
5+
ul.details
6+
li
7+
input(type="text" name="firstName" value=user.firstName)
8+
input(type="text" name="lastName" value=user.lastName)
9+
li
10+
input(type="text" name="emailAddress" value=user.emailAddress)
11+
div.photo
12+
a(href="http://thecatapi.com")
13+
img(src="http://thecatapi.com/api/images/get?format=src&type=gif&size=small&cb=" + new Date().getTime())
14+
15+
input(type="hidden" value=user._id name="id")
16+
17+
button(type="submit") Save
18+
19+
form(method="POST" action="/user/remove")
20+
input(type="hidden" value=user._id name="id")
21+
button(type="submit") Remove
22+
723

8-
div.photo
9-
a(href="http://thecatapi.com")
10-
img(src="http://thecatapi.com/api/images/get?format=src&type=gif&size=small&cb=" + new Date().getTime())

0 commit comments

Comments
 (0)