Я не могу перенаправить на пост после редактирования комментария этого поста
Я не могу перенаправить на пост после редактирования комментария этого поста.
class CommentEditView(LoginRequiredMixin, UserPassesTestMixin, UpdateView):
model = Comment
fields = ['comment']
template_name = 'social/comment_edit.html'
def get_success_url(self):
pk = self.kwargs['pk']
return reverse_lazy('post-detail',kwargs={'pk': pk,})
def test_func(self):
post = self.get_object()
return self.request.user == post.author
Здесь редактирование комментариев работает. Но после отправки отредактированного комментария я хочу, чтобы он перенаправлял на пост, связанный с комментарием.
Первичным ключом pk
является комментарий, а не пост. Вы перенаправляете с помощью:
class CommentEditView(LoginRequiredMixin, UpdateView):
model = Comment
fields = ['comment']
template_name = 'social/comment_edit.html'
def get_queryset(self, *args, **kwargs):
return super().get_queryset(self, *args, **kwargs).filter(
author=self.request.user
)
def get_success_url(self):
return reverse_lazy('post-detail',kwargs={'pk': self.object.post_id})