views.py 884 B

1234567891011121314151617181920212223
  1. from django.shortcuts import render, get_object_or_404, redirect
  2. from django.http import HttpResponse
  3. from django.contrib.auth.decorators import login_required
  4. from article.models import ArticlePost
  5. from .forms import CommentPost
  6. @login_required(login_url='/user/login')
  7. def post_comment(request, article_id):
  8. article = get_object_or_404(ArticlePost, id=article_id)
  9. if request.method == 'POST':
  10. comment_form = CommentPost(data=request.POST)
  11. if comment_form.is_valid():
  12. new_comment_form = comment_form.save(commit=False)
  13. new_comment_form.article = article
  14. new_comment_form.user = request.user
  15. new_comment_form.save()
  16. return redirect(article)
  17. else:
  18. return HttpResponse('表单有错误,请重新填写')
  19. else:
  20. return HttpResponse('发表评论仅接受POST请求')