게시판에서 선택한 글을 상세보기 한 후 해당 글을 삭제하는 기능을 만들고자 하였다.
board_contents.html
<button id = "del_qna" type = "button" onclick="fn_del_qna();">삭제하기</button>
<script>
function fn_del_qna(){
var res = confirm('게시글을 정말로 삭제하시겠습니까?');
if(res){
window.location.href = "{% url 'del' board.id %}"
alert("성공적으로 삭제되었습니다.");
}
}
</script>
버튼을 누르면 정말로 삭제할거냐는 확인을 하고 예를 누르면 삭제하는 경로로 이동한다. 그리고 삭제 되었다는 알림을 띄운다.
views.py
def del_qna(req, pk):
if req.session.get('userid'):
del_board = qna_Board.objects.get(pk = pk)
del_board.delete()
return redirect('../qna')
else:
return redirect('../qna')
게시판 글 상세보기와 같이 pk를 이용해 해당 글을 삭제한다.
urls.py
urlpatterns = [
path('delqna/<int:pk>', views.del_qna, name = "del"),
]
urlpatterns 안에 위의 내용을 추가해준다. name을 이용해 templates파일에서 해당 url을 불러올 수 있다.
실행 캡쳐
1. 삭제 전 게시판
2. 삭제버튼 클릭 시 삭제 확인 알림
3.삭제 후 게시판 (게시글 삭제된 모습)
🧐 아직 기능 구현 하느라 css를 신경을 덜 써서 좀 디자인은 좀 별로지만 기능은 구현 했다. 게시글 수정하고 summernote 공부해서 게시판 퀄리티를 좀 높여서 리뷰게시판까지 완성시켜야지!!
또.. pk가 #에 보이기 때문에 삭제되면 해당 숫자는 삭제된다. 이것도 보완하고 싶다.