프로그래밍/Django & Flask

[Django] url 태그 인자 2개 보내기

대인보우 2020. 11. 24. 12:14
반응형

댓글을 삭제하는 기능을 만들 때

1) 해당 포스트의 id (해당 포스트로 다시 redirect 해야하므로)

2) 댓글의 id 가 필요했다.

이렇게 두 가지 인자를 처리하기 위해선 다음과 같이 진행해야 한다.

 

 

먼저 템플릿은 다음과 같이 구성한다.

<a href="{% url 'comment_delete' post.id r.id%}">삭제</a>

 

인자를 두 개를 보냈으므로, url에서도 인자 두 개를 모두 사용해야 한다.

(인자를 받는 순서가 중요하므로 이름은 자유롭게 설정해도 된다)

path('reply_delete/<int:p_id>/<int:r_id>', views.comment_delete, name="comment_delete"),

 

뷰는 다음과 같이 구성된다

def comment_delete(request, p_id, r_id):
        reply = Reply.objects.get(id=r_id)
        reply.delete()
        return redirect('detail', p_id)
반응형