Commit 531d654ede3d28b7a912ef52bde315a7c0e551b6
1 parent
ae4ef72e
Exists in
master
and in
2 other branches
Delete view included
Showing
1 changed file
with
24 additions
and
2 deletions
Show diff stats
news/views.py
1 | -from django.shortcuts import render | |
1 | +from django.shortcuts import get_object_or_404, redirect, render | |
2 | 2 | from django.views import generic |
3 | 3 | from django.contrib.auth.mixins import LoginRequiredMixin |
4 | 4 | from log.models import Log |
... | ... | @@ -145,4 +145,26 @@ class SearchNewsView(LoginRequiredMixin, LogMixin, generic.ListView): |
145 | 145 | return context |
146 | 146 | |
147 | 147 | class DeleteNewsView(LoginRequiredMixin,LogMixin,generic.DeleteView): |
148 | - pass | |
148 | + login_url = reverse_lazy("users:login") | |
149 | + redirect_field_name = 'next' | |
150 | + | |
151 | + model = News | |
152 | + template_name = 'news/delete.html' | |
153 | + | |
154 | + def delete(self, request, *args, **kwargs): | |
155 | + news = get_object_or_404(News, slug = self.kwargs.get('slug')) | |
156 | + return super(DeleteNewsView, self).delete(self, request, *args, **kwargs) | |
157 | + | |
158 | + def get_success_url(self): | |
159 | + messages.success(self.request, _('News "%s" removed successfully!')%(self.object.title)) | |
160 | + success_url = reverse_lazy('news:manage_news') | |
161 | + | |
162 | + return success_url | |
163 | + | |
164 | + def get_context_data(self, **kwargs): | |
165 | + context = super(DeleteNewsView, self).get_context_data(**kwargs) | |
166 | + context['title'] = _('Delete News') | |
167 | + news = get_object_or_404(News, slug = self.kwargs.get('slug')) | |
168 | + context['new'] = news | |
169 | + | |
170 | + return context | ... | ... |