[Django] 게시판 만들기 - 삭제

    https://memezz.tistory.com/22과 이어집니다.

     

    1. urls.pypath추가해주기

    from django.urls import path
    from . import views
    
    urlpatterns = [
        # 전체 게시글 조회
        path('', views.index, name='index'),
        # 단일 게시글 조회
        path('<int:pk>/', views.detail, name='detail'),
        # 게시글 새로 쓰기
        path('new/',views.new, name='new'),
        path('create/', views.create, name='create'),
        # 지우기
        path('<int:pk>/delete/',views.delete, name='delete'),
    ]

     

     

    2. views.py에 delete 함수 추가해주기

    def delete(request,pk):
        article = Article.objects.get(pk=pk)
        article.delete()
        return redirect('index')

    삭제도 삭제 후에 바로 전체글 페이지로 돌아가면 되므로 redirect 사용

     

     

    삭제버튼을 각각의 글에서 확인하기 위해 

    3. detail.html에서 삭제버튼 만들어주기

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>detail</title>
    </head>
    <body>
        <h2>Detail</h2>
        <h3>{{article.pk}}번째 글</h3>
        <hr>
        <p>제목: {{article.title}}</p>
        <p>내용: {{article.content}}</p>
        <hr>
        <form action="{% url "delete" article.pk %}" method="POST">
            {% csrf_token %}
            <input type="submit" value="지우기">
        </form>
        <a href="{% url "index" %}">뒤로가기</a>
    </body>
    </html>

    지우기 버튼이 생긴것을 확인할 수 있다.

    댓글