본문 바로가기

Youtube Clone/MongoDB

Detail, Edit, Delete, Search

  • detail: 홈에 표시된 DB의 책 중 한권을 고른다.
  • 고르면 그 책의 id를 이용해 book/:id로 이동한다.
  • id를 이용해 DB에서 그 책의 정보를 찾는다.
    • findById와 같이 DB를 건드리는건 mongoose의 documentation(주로 query)을 찾아본다. 
  • bookDetail.pug에 comment 개수 표시 추가

bookController.js
bookDetail.pug

  • bookDetail 페이지에서 Edit Book을 누르면 books/:id/edit으로 이동한다. 
  • 제목과 설명을 바꾸면 정보가 업데이트된다.
    • 이때 이미 title과 description는 존재하고 있는 상태.
    • 수정하지 않으면 원래 값을 유지하도록 한다. 
    • 아래 코드에서 value = book.title 과 =book.description은 기본 값을 설정해주는 것이다. 
    • textarea에는 value가 없어서 이렇게 함.

bookControllers.js
editBook.pug

  • bookDetail 페이지에서 Delete 버튼을 누르면 books/:id/delete으로 이동한다. 
  • 여기선 페이지를 표시하지 않고 DB에서 데이터를 지운 뒤 홈으로 이동.

bookControllers.js

  • Search는 regular expression을 이용, options:i는 민감하지 않음을 뜻함
  • 찾은 책들을 books에 넣어 search페이지에 전달
  • search.pug에서는 결과가 없으면 No Books Found를 전달한다. 
  • 결과가 있으면 차례대로 표시

globalControllers.js
search.pug

'Youtube Clone > MongoDB' 카테고리의 다른 글

ESLint, Regular Expression  (0) 2019.09.19
Upload  (0) 2019.09.19
async-await, try-catch  (0) 2019.09.19
Model and Schema  (0) 2019.09.19
MongoDB와 Mongoose, 그리고 dotenv  (0) 2019.09.19