지난 시간에 다뤄보았던 Comment를 삭제하는 방법에 대해 알아보자.
우선, 해당 Comment를 쓴 유저가 로그인이 되어 있어야 하며, 그 유저만이 해당 Comment를 지울 수 있게 해야한다.
# blog/views.py
def replydelete(request, id):
comment = get_object_or_404(Comment, pk=id)
blog_id = comment.blog.id
comment.delete()
return redirect('blog:detail', blog_id)
comment
를 찾아낸다.comment
에 해당하는 블로그의 아이디를 blog_id
에 할당한다.comment
를 지운다.# blog/urls.py
...
path('replydelete/<int:id>', views.replydelete, name="replydelete"),
replydelete/<int:id>
...
{% for comment in blog.comments.all %}
<p>{{comment.comment_user}}</p>
{{ comment.comment_body }}
{% if comment.comment_user == user %}
<a href="{% url 'blog:replydelete' comment.id %}"
><input type="button" value="delete"
/></a>
{% endif %}
<p id="comment_time">위 댓글을 단 시간 : {{comment.comment_date}}</p>
<hr />
{% endfor %}
...
{% if comment.comment_user == user %}
이라면, 해당되는 comment를 지울 수 있게 버튼을 띄워준다.nathan29849
에 해당하는 유저가 로그인이 되어있을 때, nathan29849
의 댓글을 지울 수 있는 delete 버튼이 떴다!