У меня есть сайт с пользователями и постами.Есть две коллекции MongoDB, одна для пользователей и одна для постов.Я могу удалить через веб-сайт из каждой коллекции, но я хочу, чтобы при удалении пользователя он также удалял все сообщения пользователя.
Это код для удаления сообщений и пользователей:
function deleteUser() {
var confirmation = confirm("Are you sure?");
if (confirmation) {
$.ajax({
type: 'DELETE',
url: '/users/delete/' + $(this).data('id'),
//url: '/posts/deletew/'+$(this).data('uploadedBy')
}).done(function(response) {
window.location.replace('/usersdata');
});
window.location.replace('/usersdata');
} else {
return false;
}
}
$(document).ready(function() {
$('.deletePost').on('click', function(e) {
$target = $(e.target);
const id = $target.attr('data-id');
var confirmation = confirm('Are you sure?');
if (confirmation) {
$.ajax({
type: 'DELETE',
url: '/posts/delete/' + id,
success: function(response) {
console.log('here');
},
error: function(err) {
console.log(err);
}
});
window.location.replace('/posts/blog');
}
});
});
Я обрабатываю запрос с NodeJS на стороне сервера:
//delete users
app.delete('/users/delete/:id', function(req, res) {
User.deleteOne({
_id: ObjectId(req.params.id)
}, function(err, result) {
if (err) {
console.log(err);
}
res.redirect('/');
});
})
//delete post
app.delete('/posts/delete/:id', function(req, res) {
Post.deleteOne({
_id: ObjectId(req.params.id)
}, function(err, result) {
if (err) {
console.log(err);
}
res.redirect('/blog');
});
})
//delete post with deleted user that what i've been trying to do
app.delete('posts/deletew/:uploadedBy', function(req, res) {
Post.deleteOne({
uploadedBy: req.params.uploadedBy
}, function(err, result) {
if (err) {
console.log(err);
}
res.redirect('/');
})
})
Если вы знаете, какчтобы сделать это, пожалуйста, ответьте.Спасибо