Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Servlet
- JPQL
- transaction
- JDBC
- Android
- db
- http
- SpringBoot
- AOP
- 자바
- 스프링 핵심 원리
- 스프링
- pointcut
- QueryDSL
- java
- Spring Boot
- 알고리즘
- kotlin
- spring
- 인프런
- 그리디
- springdatajpa
- Proxy
- Exception
- jpa
- Thymeleaf
- Greedy
- 백준
- 김영한
- 스프링 핵심 기능
Archives
- Today
- Total
개발자되기 프로젝트
댓글 삭제버튼 추가 본문
1. 댓글 삭제버튼 추가
- 간단하게 table <td> 안에 <form>을 추가해줬다.
- 이 때 PathVariable로는 comment의 id,
- QueryParameter로 현재 Post의 id를 넘겨준다.
<table class="table" style="max-width: 600px; text-align:center" align="center">
<thead>
<tr>
<th>작성자</th>
<th>내용</th>
<th>작성일</th>
<th>삭제</th>
</tr>
</thead>
<tbody>
<tr th:each="comment : ${comments}">
<td><a href="post.html" th:href="@{/members/{memberId}(memberId=${comment.member.id})}" th:text="${comment.member.userId}">작성자</a></td>
<td th:text="${comment.content}">댓글 내용</td>
<td th:text="${{comment.lastModifiedDate}}"></td>
<td>
<form th:action="@{/comments/{commentId}/delete?postId={id}(commentId=${comment.id}, id=${post.id})}" th:object="${commentDto}" method="post">
<button type="submit" class="btn-close" aria-label="Close"></button>
</form>
</td>
</tr>
</tbody>
</table>
2. Controller
- view에서 넘어오는 PathVariable, QueryParameter를 받아서 처리함.
- comment 삭제 후 현재 게시물로 redirect
@PostMapping("/{commentId}/delete")
public String deleteComment(@PathVariable("commentId") Long id, @RequestParam("postId") Long postId, RedirectAttributes redirectAttributes){
commentService.deleteComment(id);
redirectAttributes.addAttribute("postId", postId);
return "redirect:/posts/{postId}";
}
3. 결과
- 댓글 삭제 전
- 댓글 삭제
4. 앞으로
est용 data 서버시작할 때 DB에 올리기Listener
createdAt, updatedAt등
게시글에 작성자 표시- view 정리
게시글 검색- 검색 옵션 추가 : 작성자, 제목 구분
영속성 전이 설정게시글 삭제회원 탈퇴
댓글 삭제 버튼- 대댓글
- 검증 & 예외처리
- 회원 가입시 필수 정보 지정.
- 데이터 타입 지정
- 인증처리
- 로그인한 사용자만 글 & 댓글 작성 가능.
- 본인이 작성한 글, 댓글만 삭제 가능
- 관리자는 모든 권한
- 예외처리
- 페이징 처리
- 컬렉션 조회 최적화
5. GitHub: 211009 remove comment
'Project > 블로그 게시판 만들기' 카테고리의 다른 글
회원가입시 검증 기능 추가 - 검증 직접 처리 (0) | 2021.10.12 |
---|---|
글 수정 기능 추가 (0) | 2021.10.10 |
회원 탈퇴하기 (0) | 2021.10.09 |
글 삭제하기, cascade, orphanRemoval, 영속성 전이 (0) | 2021.10.09 |
검색기능 추가 및 view 정비 (0) | 2021.10.09 |
Comments