示例#1
0
文件: views.py 项目: ziyad00/bootcamp
def answer_vote(request):
    """Function view to receive AJAX call, returns the count of votes a given
    answer has recieved."""
    answer_id = request.POST["answer"]
    answer = Answer.objects.get(uuid_id=answer_id)
    is_answer_owner = is_owner(answer, request.user.username)
    if is_answer_owner:
        return JsonResponse({
            "message": _("You can't vote your own answer."),
            "is_owner": is_answer_owner,
        })

    value = True if request.POST["value"] == "U" else False

    try:
        update_votes(answer, request.user, value)
        return JsonResponse({
            "votes": answer.total_votes,
            "is_owner": is_answer_owner
        })

    except IntegrityError:  # pragma: no cover
        return JsonResponse(
            {
                "status": "false",
                "message": _("Database integrity error.")
            },
            status=500)
示例#2
0
文件: views.py 项目: ziyad00/bootcamp
def question_vote(request):
    """Function view to receive AJAX call, returns the count of votes a given
    question has recieved."""
    question_id = request.POST["question"]
    question = Question.objects.get(pk=question_id)
    is_question_owner = is_owner(question, request.user.username)
    if is_question_owner:
        return JsonResponse({
            "message": _("You can't vote your own question."),
            "is_owner": is_question_owner,
        })

    value = True if request.POST["value"] == "U" else False

    try:
        update_votes(question, request.user, value)
        return JsonResponse({
            "votes": question.total_votes,
            "is_owner": is_question_owner
        })

    except IntegrityError:  # pragma: no cover
        return JsonResponse(
            {
                "status": "false",
                "message": _("Database integrity error.")
            },
            status=500)