import datetime import math import random from django.http import JsonResponse, HttpResponseRedirect from django.utils import timezone from blog import models from system.error.ServerException import ServerException def get_very_code(request): very_num = random.randint(1, 100) request.session['very_num'] = very_num return JsonResponse({"success": True, "data": very_num}) def add_comment(request): if request.method == 'POST': nick_name = request.POST.get("nick_name") avatar = request.POST.get("avatar") website = request.POST.get("website") article_id = request.POST.get("article_id") article_title = request.POST.get("article_title") comment = request.POST.get('comment') email = request.POST.get('email') veryCode = request.POST.get('veryCode') try: veryCode = int(veryCode) if request.session['very_num'] != veryCode: request.session['msg'] = "验证码不正确" return HttpResponseRedirect('/article/' + article_title + '.html') except Exception as e: request.session['msg'] = "验证码不正确" return HttpResponseRedirect('/article/' + article_title + '.html') article = models.Article.objects.get(id=int(article_id)) if article is None: return JsonResponse({"success": False, "message": "没有找到对应文章"}, safe=False) def is_empty(val): return val is None or val == '' if is_empty(nick_name): request.session['msg'] = "请填写昵称" return HttpResponseRedirect('/article/' + article_title + '.html') # 跳转到主界面 if is_empty(comment): request.session['msg'] = "请填写评论内容" return HttpResponseRedirect('/article/' + article_title + '.html') # 跳转到主界面 if is_empty(email): request.session['msg'] = "请填写Email" return HttpResponseRedirect('/article/' + article_title + '.html') # 跳转到主界面 request.session['msg'] = "" obj = models.Comment.objects.create(nick_name=nick_name, avatar=avatar, article=article, website=website, comment=comment, created_time=datetime.datetime.now(), email=email) now_utc = timezone.now() plus_eight = now_utc + datetime.timedelta(hours=8) obj.created_time = plus_eight obj.save(update_fields=['created_time']) return HttpResponseRedirect('/article/' + article_id + '.html') # 跳转到主界面 else: raise ServerException("错误的请求")