Skip to content
Django

Class-Based Views

Use generic class-based views for common CRUD flows.

#views#cbv#crud

Code

django
from django.views.generic import ListView, DetailView, CreateView
from django.urls import reverse_lazy
from .models import Article
from .forms import ArticleForm

class ArticleListView(ListView):
    model = Article
    template_name = "articles/list.html"
    context_object_name = "articles"
    paginate_by = 10

class ArticleDetailView(DetailView):
    model = Article
    template_name = "articles/detail.html"

class ArticleCreateView(CreateView):
    model = Article
    form_class = ArticleForm
    success_url = reverse_lazy("article-list")