브라우저 콘솔에 에러 없고, 터미널 콘솔에도 에러 없습니다 ㅠ
아래는 server.js 입니다.
app.delete('/delete', function (req, res) {
console.log('/delete', req.body);
// 정수로 변환
req.body._id = parseInt(req.body._id);
console.log('정수변환: ', req.body._id);
db.collection('post').deleteOne(req.body._id, function (에러, 결과) {
console.log('삭제 완료');
res.status(200).send('성공');
});
});
콘솔에도 id값 잘 찍히고 '삭제 완료' 로그도 잘 찍힙니다.
브라우저 콘솔창에도 별다른 에러는 없습니다.
아래는 list.ejs 입니다.
<div class="container mt-4">
<h4 class="ml-2 my-3">서버에서 가져 온 할일 리스트</h4>
<!-- 반복문으로 요청한 데이터 루프 출력 -->
<ul class="list-group">
<% for (var i = 0; i < posts.length; i++) { %>
<li class="list-group-item">
<h6><%=posts[i]._id %></h6>
<h4>할일 제목 : <%= posts[i].title %></h4>
<p>할일 마감날짜 : <%= posts[i].date %></p>
<button class="btn btn-danger delete" data-id="<%= posts[i]._id %>">삭제</button>
<button class="btn btn-success open">조회</button>
</li>
<% } %>
</ul>
</div>
<script>
$('.delete').click(function (e) {
var 글번호 = e.target.dataset.id;
console.log(e);
console.log(글번호);
var 지금누른거 = $(this);
$.ajax({
method: 'DELETE',
url: '/delete',
data: { _id: 글번호 },
})
.done(function (결과) {
console.log('게시글 삭제 성공했어요.');
지금누른거.parent('li').fadeOut();
})
.fail(function (xhr, textStatus, errorThrown) {
console.log(xhr, textStatus, errorThrown);
});
});
삭제 버튼을 누르면 삭제가 되지만 새로고침하면 삭제된 데이터들이 삭제가 안돼있어요.
db 에도 삭제가 안돼있습니다. 뭐가 문제일까요?