211112 TIL

CoderS·2021년 11월 12일
0

TIL DAY 99

오늘 배운 일

✔️ Node.js 백엔드 개발

  • 기존 직원 정보 수정하기

    전의 코드를 조금 수정해보겠다.

    바뀐 코드는

    보면은 Member 모델의 update이라는 메소드를 사용했다.
    그 안에는, 두가지의 아규먼트가 들어있다.

    첫 번째로는, 새로운 직원의 정보
    두 번째는, 수정할 row를 특정하기 위한 조건 객체이다.

    update또한 다른 메소드와 같이, promise 객체를 리턴하는 비동기 실행 함수
    update 메소드가 리턴하는 promise 객체에는 그 작업 성공결과로 배열 하나가 존재한다.
    해당 배열 첫 번째 요소로는, 수정된 row가 리턴된다.

    테이블이 존재하지 않는 id값이라면, 갱신된 row가 없어서 0이 존재한다.
    그리하여 배열의 첫 번째 요소가 0인 경우에는...

    그러한 직원의 정보가 없다는 메세지를

    그렇지 않은 경우에는...

    해당 갯수의 row들이 영향을 받았다는 메세지를 보내줬습니다.

    본격적으로, PUT request를 보내보겠다.

    터미널에서 실행을 시키고...

    GET request를 보내서 직원 정보를 조회하고, 첫 번째 id인 Alex의 직업을 바꿔보겠다.

    바꾸기 전...

    IOS Developer라고 바꿔봤다.

    PUT request를 보내면...

    GET request를 보내면...

    우리는 이번에는 하나의 column만 사용해서 특정 프로퍼티를 수정하고 싶은데 불필요한 프로퍼티들은 다 지우고 다시 직업을 Server Developer로 수정해보겠다.

    결과적으로 :

  • 또 다른 직원 정보 수정하는 방법

    처음에 기존의 PUT 메소드를 주석처리시키고...

    위에 있는 findOne 메소드는 해당 id값을 가진 row를 가져오고있다.
    member 모델 객체는 해당 row와 연동되어있다.

    member 객체 프로퍼티 값을 request 바디에 있던 새 객체 값들로 수정해주고, 마지막으로 save 메소드로 호출하면 member 모델 객체와 연동되어있던 테이블의 실제 row가 수정된다.

    터미널을 작동시키고..

    test.http로 돌아가서

    이름을 Alex에서 David로 수정해봤다.

    결과값 :

    • 잘 수정이되어서 나타난다.

    그리고 존재하지 않은 id값을 지정해두는 경우에서도 코드를 추가로 작성해보겠다.

끝으로 :

  • 오늘은 ORM을 이용해서 직원 정보를 수정하는 방법에 대해 배워보는 시간을 가졌습니다.
  • PUT 메소드 또한, 비동기식 실행 함수여서 그 다음 DELETE 또한 똑같을 것 같다.
profile
하루를 의미있게 살자!

0개의 댓글