포트폴리오/SPRINGBOOT 옛날
3-12 : 앵커
서버관리자 페페
2022. 10. 13. 19:54
단 하나의 맥락
: 답변 앵커 추가
Semiflow Bundle
: question_detail에 앵커 태그 추가
: 답변 등록 및 수정 시 redirect에 앵커 코드 추가
: AnswerService의 create 메소드에서 답변 객체 얻도록 수정
: AnswerController의 createAnswer 메소드, answerModify 메소드, answerVote 메소드 각각 수정
> question_datail.html 의
답변 반복 클래스 내부 최상단에
- <a th:id="|answer_${answer.id}|"></a>
추가
-
> AnswerService에서
- public void create(Question question, String content, SiteUser author) 를
- public Answer create(~동일~) 로 변경
- R : return answer;
로 answer값을 리턴하도록 변경
-
> AnswerController에서
- @PreAuthorize("isAuthenticated()")
- @GetMapping("/vote/{id}")
- M : public String answerVote
- R : retrun String.format("redirect:/question/detail/%s", answer.getQuestion().getId())
마지막 return 값을
- R : return String.format("redirect:/question/detail/%s#answer_%s", answer.getQuestion().getId();, answer.getId());
로 변경
- @PreAuthorize("isAuthenticated()")
- @PostMapping("/modify/{id}")
- M : public String answerModify
역시 동일 적용,
- @PreAuthorize("isAuthenticated")
- @PostMapping("/create/{id}")
- M : public String createAnswer
는 Answer answer가 없으므로
- this.answerService.create(question, answerForm.getContent(), siteUser); 를
- Answer answer = this.answerService.create(question, answerForm.getContent(), siteUser);
로 변경
return도 똑같이 변경해준다.