DeleteView with Confirmation

Confirm and delete objects using DeleteView.


# models.py

from django.db import models

class Comment(models.Model):
    body = models.TextField()
  

# admin.py

from django.contrib import admin
from .models import Comment

@admin.register(Comment)
class CommentAdmin(admin.ModelAdmin):
    list_display = ("id","body")
  

# views.py
from django.views.generic import DeleteView
from django.urls import reverse_lazy
from .models import Comment
class CommentDelete(DeleteView):
    model = Comment
    template_name = "comments/confirm_delete.html"
    success_url = reverse_lazy("comment-list")

# urls.py
path("comments//delete/", CommentDelete.as_view(), name="comment-delete")

# templates/comments/confirm_delete.html
<form method="post">{% csrf_token %}<p>Confirm?</p><button class="btn btn-danger">Delete</button></form>
  
Explanation:
  • DeleteView expects a confirmation template by default.
  • Always include CSRF token on POST delete.
  • Category Views (FBV & CBV)
  • Total Views 464
  • Last Modified 31 December, 2025
  • Tags #cbv #deleteview #generic #views
Never miss a story on Django.wiki

Subscribe for fresh tutorials, snippets, and updates.

By subscribing you agree to our Privacy Policy.