• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Node.js, Express 게시판 ajax로 삭제요청 db에서 삭제가 안됨

ajax로 삭제요청 db에서 삭제가 안됨

3 글 보임 - 1 에서 3 까지 (총 3 중에서)
  • 글쓴이
  • #23561

    성지혜
    참가자

    브라우저 콘솔에 에러 없고, 터미널 콘솔에도 에러 없습니다 ㅠ

     
    아래는 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 에도 삭제가 안돼있습니다. 뭐가 문제일까요?

    #23570

    codingapple
    키 마스터

    .deleteOne(1)

    이렇게 DB로 삭제요청해서 삭제가 안되는듯요 

    .deleteOne({_id : 1})

    이렇게 삭제요청을 해야합니다 

     

    #23672

    성지혜
    참가자

    어제 계속 찾아보고 해결했습니다 ㅠㅠ 감사합니다!

3 글 보임 - 1 에서 3 까지 (총 3 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠