Advertisement
Guest User

Untitled

a guest
Jun 9th, 2020
12
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.97 KB | None | 0 0
  1. class PostDetailView(FormMixin, DetailView):
  2. model = Post
  3. template_name = 'post/post_detail.html'
  4. form_class = CommentForm
  5.  
  6. def get_context_data(self, **kwargs):
  7. context = super(PostDetailView, self).get_context_data(**kwargs)
  8. context['comments'] = Comment.objects.filter(post=self.object)
  9. context['form_comment'] = CommentForm(initial={'post': self.object})
  10. return context
  11.  
  12.  
  13.  
  14. def post(self, request, *args, **kwargs):
  15. self.object = self.get_object()
  16. form = self.get_form()
  17. if form.is_valid():
  18. return self.form_valid(form)
  19. else:
  20. return self.form_invalid(form)
  21.  
  22. def form_valid(self, form):
  23. form.instance.user = self.request.user
  24. form.instance.post = self.object
  25. form.save()
  26. return super(PostDetailView, self).form_valid(form)
  27.  
  28. def get_success_url(self):
  29. return reverse('post-detail', kwargs={'pk': self.object.id})
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement