예제 #1
0
def new(request, post_id):
    try:
        post = Post.objects.get(pk=post_id)
    except Post.DoesNotExist:
        raise Http404

    if request.method == "POST":
        form = CommentCreationForm(request.POST, initial={'post': post})

        if form.is_valid():
            comment = form.save(request.user)
            return HttpResponseRedirect(reverse('posts.views.show', args=[post.pk]))
    else:
        form = CommentCreationForm(initial={'post': post})

    return render(request, 'comments/new.html', { 'form': form, 'post': post })
예제 #2
0
def edit(request, comment_id):
    try:
        comment = Comment.objects.get(pk=comment_id)
    except Comment.DoesNotExist:
        raise Http404

    if not request.user.is_staff or comment.created_by != request.user:
        return HttpResponseRedirect(reverse('posts.views.show', args=[comment.post.pk]))

    if request.method == "POST":
        form = CommentCreationForm(request.POST, instance=comment)

        if form.is_valid():
            comment = form.save(request.user)
            return HttpResponseRedirect(reverse('posts.views.show', args=[comment.post.pk]))

    else:
        form = CommentCreationForm(instance=comment)

    return render(request, 'comments/edit.html', { 'form': form })