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

home2 게시판 Node.js, Express 게시판 본인이 쓴 글만 삭제 기능 만들기

본인이 쓴 글만 삭제 기능 만들기

  • 이 주제에는 9개 답변, 2명 참여가 있으며 codingapple1 년 전에 전에 마지막으로 업데이트했습니다.
10 글 보임 - 1 에서 10 까지 (총 10 중에서)
  • 글쓴이
  • #125990

    황승현
    참가자
    server.js
    app.get("/list", async (요청, 응답) => {
      let result = await db.collection("post").find().toArray();
      응답.render("list.ejs", { 글목록: result, username: 요청.user.username });
    });
    list.ejs
     
    <% if(글목록[i].username == username){ %>
    <span class="delete" data-id="<%= 글목록[i]._id %>">🗑️</span>
    <% } %>
    
    이렇게 만들어봤는데 처음엔 본인이 쓴 글에만 🗑️ 생겼는데 잠시 뒤에 오류가 생기고 안되네요. 어떻게 ejs에 변수 여러 개 보낼 수 있나요?
     
    #125995

    codingapple
    키 마스터
    { data :  { 글목록: result, username: 요청.user.username } }
    이런 식으로 보내서 꺼내써봅시다
    #126021

    황승현
    참가자
    꺼내쓸 때 data.글목록, data.username 쓰는데 data is not defined 쓰네요. 잘못 꺼내쓴건가요?
    #126031

    codingapple
    키 마스터
    아니면 app.get("/list", 이런 코드가 하나 더 있거나 로그인안해서 요청.user가 비어있어서 그럴수도요
    #126032

    황승현
    참가자
        제목 없음
    server.js
    app.get("/list", async (요청, 응답) => {
      let result = await db.collection("post").find().toArray();
      응답.render("list.ejs", {
        data: { username: 요청.user.username, 글목록: result },
      });
      console.log(result);
      console.log(요청.user);
    });
    
    list.ejs 
    <% if(data.username == data.글목록[i].username){ %>
    <span class="delete" data-id="<%= data.글목록[i]._id %>">🗑️</span>
    <% } %>
    
    원하는대로 잘 작동하게 됬네요. 감사합니다. 그런데 server에서 list.ejs로 데이터 전송할 때 로그인되어 있지 않으면 username 전송할 때 오류가 생기는데 이건 어떻게 해결할 수 있을까요?
    
    
    #126064

    codingapple
    키 마스터
    요청.user에 뭐가 들어있을때만 보내라고 if문 같은거 쓰면 됩니다
    #126454

    황승현
    참가자
    server.js
    app.get("/list", async (요청, 응답) => {
      let result = await db.collection("post").find().toArray();
      if (요청.user != undefined) {
        응답.render("list.ejs", {
          data: { username: 요청.user.username, 글목록: result },
        });
      } else {
        응답.render("list.ejs", { data: { 글목록: result } });
      }
    });
    잘 되네요. 감사합니다!
    #126474

    codingapple
    키 마스터
    아니면 요청.user만 보낸다음에 ejs 문법으로 요청.user에 뭐가 있으면 보여달라고 ejs if 쓰는게 깔끔할수도요
    #126527

    황승현
    참가자
    요청.user 보낼 때 비로그인 상태이면 에러가 나는걸 해결하지 못했습니다 ㅠ
    #126568

    codingapple
    키 마스터
    요청.user.어쩌구 말고 요청.user만 보내면 별일없을걸요
10 글 보임 - 1 에서 10 까지 (총 10 중에서)
  • 답변은 로그인 후 가능합니다.

About

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

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

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