DB에서 개별 유튜버 수정하기! PUT!

데브코스

목록 보기
34/131

개별 유튜버 "수정" => PUT/youtubers/:id

- req : params.id과 db에 각 객체마다 내가 수정할 수 있는 요소는 channelTitle밖에 없으니 채널타이틀도 바꿔주자.(body에 채널타이틀이 있어서 꺼내와야 해)

- res : "(이전)channelTitle님, 채널명이 (새로운)channelTitle로 변경되었습니다."

자 이렇게 만들어주자!


수정이라는 것을 할때는 PUT이라는 것을 사용하고,
GET을 만들어줄때 처럼 각 ID를 params로 불러와서 사용해주면 돼.

app.put("/youtubers/:id", function (req, res) {
  let { id } = req.params;
  id = parseInt(id);

  var youtuber = db.get(id);
  var oldTitle = youtuber.channelTitle;
  if (youtuber == undefined) {
    res.json({
      message: `${id}번 유튜버는 없는 유튜버입니다.`,
    });
  } else {
    var newTitle = req.body.channelTitle;
    youtuber.channelTitle = newTitle;
    db.set(id, youtuber); //db에 업데이트 된 youtuber 정보를 다시 저장
    res.json({
      message: `채널명이 ${oldTitle}에서 ${youtuber.channelTitle}로 유튜버 정보가 수정되었습니다.`,
    });
  }
});

이렇게 우리가 바꿔줄 수 있는 부분은 channelTitle밖에 없으니 채널 타이틀을 바꿔주고, 아래 메세지처럼 기존 채널명에서 바꾼 채널명을 보여주면 되지.

profile
Dive Head First | Work Super Hard | Attract Great People

0개의 댓글