From 531d654ede3d28b7a912ef52bde315a7c0e551b6 Mon Sep 17 00:00:00 2001 From: Gustavo Date: Wed, 12 Apr 2017 19:17:41 -0300 Subject: [PATCH] Delete view included --- news/views.py | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/news/views.py b/news/views.py index 0a55244..4b55fbc 100644 --- a/news/views.py +++ b/news/views.py @@ -1,4 +1,4 @@ -from django.shortcuts import render +from django.shortcuts import get_object_or_404, redirect, render from django.views import generic from django.contrib.auth.mixins import LoginRequiredMixin from log.models import Log @@ -145,4 +145,26 @@ class SearchNewsView(LoginRequiredMixin, LogMixin, generic.ListView): return context class DeleteNewsView(LoginRequiredMixin,LogMixin,generic.DeleteView): - pass + login_url = reverse_lazy("users:login") + redirect_field_name = 'next' + + model = News + template_name = 'news/delete.html' + + def delete(self, request, *args, **kwargs): + news = get_object_or_404(News, slug = self.kwargs.get('slug')) + return super(DeleteNewsView, self).delete(self, request, *args, **kwargs) + + def get_success_url(self): + messages.success(self.request, _('News "%s" removed successfully!')%(self.object.title)) + success_url = reverse_lazy('news:manage_news') + + return success_url + + def get_context_data(self, **kwargs): + context = super(DeleteNewsView, self).get_context_data(**kwargs) + context['title'] = _('Delete News') + news = get_object_or_404(News, slug = self.kwargs.get('slug')) + context['new'] = news + + return context -- libgit2 0.21.2