javascript - 我正在尝试通过单击猫鼬的按钮来删除帖子。已经为此工作了很多
问题描述
所以这是我的代码。
这是我点击帖子后生成的页面:
<%- include('partials/header'); %>
<form action="/delete" method="post">
<h1 class="main-heading"> <%= postTitle %> </h1>
<p class="content-paragraph"> <%= postText %> </p>
<button class="btn btn-primary" name="delete" value=" <%= postTitle %> ">Delete Post</button>
</form>
<%- include('partials/footer'); %>
这是执行此操作的代码:在这里,我通过参数检索了“_id”。
app.get('/posts/:postId', (req, res) => {
const requestedPostId = req.params.postId;
Post.findOne({_id: requestedPostId}, function(err, post) {
res.render('post', {
postTitle: post.title,
postText: post.content
});
});
});
所以,起初,我试图通过它的“标题值”来删除一个帖子。不确定如何检索“删除”操作表单的“_id”。
像这样:
app.post('/delete', (req, res) => {
const requestedTitle = req.body.delete;
console.log(requestedTitle);
Post.findOneAndRemove({title: requestedTitle}, function(err) {
if (!err) {
console.log('Item successfully removed');
res.redirect('/');
}
});
});
我尝试将“删除操作”表单放在生成所有帖子的主页上。但这总是只会删除第一个帖子,无论我点击哪个帖子。
<%- include('partials/header'); %>
<h1 class="main-heading">HOME</h1>
<p class="content-paragraph"> <%= startingContent %> </p>
<% posts.forEach(elem => { %>
<h1 class="main-heading"> <%= elem.title %> </h1>
<p class="content-paragraph"> <%= elem.content.substring(0, 150) + '...' %></p>
<a href='/posts/<%= elem._id %> '>Read More</a>
<% }); %>
<%- include('partials/footer'); %>
在这一点上,我被卡住了,不知道如何继续。
谢谢!
解决方案
推荐阅读
- java - 无法从 Java 将布尔首选项存储到 Windows 10 注册表,而整数和字符串已正确存储
- c++ - 什么可能导致在不同角度获得完全相同的三角函数输出
- python - 退出定义中的循环
- c - 出现错误:取消引用指向不完整类型“结构类型”的指针
- javascript - 在 asp.net core 中加载页面时如何显示已处理文件的数量?
- php - php / mariadb更新后禁止加载数据本地INFILE
- r - 当某些列表元素不可用时,在 R 中创建列表
- javascript - 这是使用 React-Filepond 的内存泄漏吗?
- javascript - 四舍五入到最接近的 0.5,而不是 0.0
- jquery - 如何在单击多个项目时使用 jQuery 循环遍历数组?