question_detail.html 에 삭제 버튼 추가
<a
onclick="return confirm('정말로 삭제하시겠습니까?')"
th:href="@{|/answer/delete/${answer.id}|}"
class="delete btn btn-sm btn-outline-danger"
sec:authorize="isAuthenticated()"
th:if="${answer.author != null and #authentication.getPrincipal().getUsername() == answer.author.username}"
th:text="삭제"
></a>
AnswerService
//답변 삭제하기
public void delete(Answer answer) {
aRepo.delete(answer);
}
AnswerController
//답변 삭제 처리
@PreAuthorize("isAuthenticated()")
@GetMapping("/delete/{id}")
public String answerDelete(Principal principal,@PathVariable("id") int id ) {
Answer answer = aService.getAnswer(id);
if(!answer.getAuthor().getUsername().equals(principal.getName())) {
throw new ResponseStatusException(HttpStatus.BAD_REQUEST,"삭제 권한이 없습니다.");
}
aService.delete(answer);
return String.format("redirect:/question/detail/%s", answer.getQuestion().getId());
}
이 답변 삭제해봄
삭제 확인 완료
'BACKEND > SpringBoot' 카테고리의 다른 글
질문/답변 추천 기능 (0) | 2023.11.13 |
---|---|
수정일시 표시하기( 질문, 답변) (1) | 2023.11.13 |
답변 수정 (0) | 2023.11.13 |
질문 삭제 처리 (0) | 2023.11.10 |
질문 수정 처리 (0) | 2023.11.10 |