본문 바로가기

WEB

Node.js로 웹서비스 만들기 12일차

MongoDB에 있는 데이터 삭제 요청하기

db.collection('컬렉션이름').deleteOne({어떤걸 삭제할건지 여기에 적어줌}, function(){
	//삭제가 완료된 다음에 실행할 것
});

삭제 버튼을 클릭하면 해당 ID의 글을 삭제하는 요청

//list.ejs
<% for(var i=0; i<posts.length; i++) { %>
	<li class="list-group-item">            
		<h4>할일 제목 : <%= posts[i].제목 %></h4>
		<p>할일 마감날짜 : <%= posts[i].날짜 %></p>
		<button type="button" class="delete" data-id="<%= posts[i]._id %>">삭제</button>
	</li>
<% } %>
//list.ejs
$('.delete').click(function(e){

	$.ajax({
		method : 'DELETE',
		url : '/delete',
		data : {_id : e.target.dataset.id } //e.target.dataset.id 클릭한 버튼의 data-id값임
	}).done(function(res){
          
	});

});
//server.js
app.delete('/delete', function(req, res){
    
    req.body._id = parseInt(req.body._id); //list.ejs에서 넘어온 아이디 값이 문자여서 숫자로 바꿔줌
    console.log(req.body);

    db.collection('post').deleteOne(req.body, function(err, res){
        console.log('삭제완료');
    });
});

이렇게 하면 일단 디비에 있는 글은 삭제됨

이제 페이지 새로고침 하는 스크립트를 추가하면 됨