게시판 글 수정하기
큰 틀에서 게시판을 수정하는 frontend인 BoardChange.vue를 일단 만들었다.
BoardWrite와 달리 수정 화면에서는 작성자는 변하지 않기때문에 작성자 입력을 제외한 content, subject, password란을 아래처럼 만들어 놓았다.
비밀번호를 입력하고 기존의 db에 저장되어있는 비밀번호와 일치할때 글이 수정되도록 기능을 만들었다.
글 목록에서 상세내용을 불러와 글 하나하나를 볼때처럼 글에 해당하는 id값을 불러오는것이 핵심포인트다.
Board에서 수정하기 버튼을 누를때 해당 id값의 글의 BoardChange가 불러와 져야 하기 때문에 Board.vue에 linkTo2함수를 만들어 추가하였다.
Backend에서는 Putmapping을 사용하지 않고 Postmapping을 사용하였다. (mapper에서는 update쿼리가 동작하도록)
그렇기 때문에 BoardChange.vue에서 글쓰기와 거의 유사하게 코드가 돌아간다.
backend에서 (/update) url을 하나 더 만들었다.
service에서 if문을 사용하여 서버의 password와 입력 password가 동일하면 글이 수정되도록 짜여진 코드
글에 해당하는 id값으로 password를 비교하여야 하기 때문에 DAO에 id값 추가
mapper에서는 앞서 말한 changBoard는 update쿼리,
password에서는 id에 해당하는 password를 검색하기위해 select쿼리를 작성하였다. 여기서 resultType을 String으로 하지 않아서 오류가 발생하였다.
이제 글 수정 테스트를 해보자
5번글을 수정해 보았다.
수정 전
글 제목과 글 내용을 수정하였는데 성공적으로 수정이 된 것을 볼 수 있다!
상세내용
'Vue.js' 카테고리의 다른 글
vue.js [검색창 만들기] (0) | 2022.06.03 |
---|---|
vue.js [글 삭제하기] (0) | 2022.06.02 |
vue.js [게시판 글 쓰기] (0) | 2022.05.27 |
vue.js [상세 페이지 불러오기] (0) | 2022.05.26 |
vue.js [게시판 불러오기] (0) | 2022.05.26 |