[英]How to delete a particular row in Node.js and express
How can I delete data from a list in Node.js, using express
and ejs
view? 如何使用
express
和ejs
视图从Node.js中的列表中删除数据? I have tried, but it's not working. 我已经尝试过,但是没有用。 I am using
mongodb
. 我正在使用
mongodb
。
Here is what I have done so far but it's not working. 这是我到目前为止所做的,但是没有用。
router.post('/delete', function(req, res, next) {
var id = req.body.id;
mongodb.connect(url, function(err, db) {
assert.equal(null, err);
db.collection('profile').deleteOne({ "_id": objectId(id) }, function(err, result) {
console.log('Item deleted');
db.close();
});
});
res.redirect('/userlist');
});
and ejs (view) code is: 和ejs(视图)代码为:
<td><a href="/userlist/delete">Delete</a></td>
below code is works but when I press Delete , it deletes all the row. 下面的代码是可行的,但是当我按Delete时 ,它将删除所有行。 Here I used get intead of post
在这里我使用了获取帖子
router.get('/delete', function(req, res, next) {
mongodb.connect(url, function(err, db) {
assert.equal(null, err);
db.collection('profile').deleteOne(function(err, result) {
console.log('Item deleted');
db.close();
});
});
res.redirect('/userlist');
});
If you want to use a get request, it can be done like this: 如果要使用get请求,可以这样进行:
router.get('/delete/:id', function(req, res, next) {
var id = req.params.id;
mongodb.connect(url, function(err, db) {
assert.equal(null, err);
db.collection('profile').deleteOne({ "_id": objectId(id) }, function(err, result) {
console.log('Item deleted');
db.close();
});
});
res.redirect('/userlist');
});
Now you need to request something like this: 现在,您需要请求以下内容:
<td><a href="/userlist/delete/some-id">Delete</a></td>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.