from django.views.generic import ListView, CreateView from django.shortcuts import get_object_or_404 from .models import Content, Category class ContentCategoryList(ListView): """Affiche les contenus d'une catégorie.""" model = Content context_object_name = "contents" template_name = "content/content_list.html" def get_queryset(self): category_id = self.kwargs['category_id'] category = get_object_or_404(Category, id=category_id) return Content.objects.filter(category=category) def get_context_data(self, **kwargs): context = super(ListView, self).get_context_data(**kwargs) category_id = self.kwargs['category_id'] category = get_object_or_404(Category, id=category_id) context['category'] = category return context class CreateCategory(CreateView): model = Category fields = '__all__'