Пустой тег не работает с кнопкой like

Я новичок в Django. Я создаю простой сайт вопросов и ответов, и я реализую функцию like answer, поэтому я сделал модель Like Answer, но она не работает только в if else в шаблоне, поэтому я добавил тег empty Но кнопка не нравится ответ.

models.py

class Question(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    title = models.CharField(max_length=900)

class Answer(models.Model):
    question_of = models.ForeignKey(Question, on_delete=models.CASCADE)
    answer_by = models.ForeignKey(User, on_delete=models.CASCADE)
    body = models.CharField(max_length=900)

class AnswerLike(models.Model):
    answer_of = models.ForeignKey(Answer, on_delete=models.CASCADE)
    liked_by = models.ForeignKey(User, on_delete=models.CASCADE)

views.py


def question_detail(request, question_id):
    post = get_object_or_404(Question, pk=question_id)

    answers = post.answer_set.all()

    context = {'post':post, 'answers':answers}
    return render(request, 'question_detail.html', context)


def answer_like(request, answer_id):
     answer = get_object_or_404(Answer, pk=answer_id)

     if request.GET.get('submit') == 'like':
        save_like = AnswerLike.objects.create(answer_of=answer, liked_by=request.user)

        return JsonResponse({'liked':'liked'})

question_detail.html

{{post}}

{% for ans in answers %}

{{ans.body}}

{% for likes in ans.answerlike_set.all %}


<form method="GET" class="AnswerLike" action="{% url 'answer_like' ans.id  %}">

    {% if request.user == likes.liked_by %}

    <button name='submit' type='submit' value="UnLike">Liked</button>

    {% else %}

    <button name='submit' type='submit' value="Like">Not Liked</button>

    {% endif %}

  {% empty %}


    <button name='submit' type='submit' value="Like">Not Liked</button>

  {% endfor %}

</form>

{% endfor %}


Когда я сохраняю лайк от другого пользователя из админки, то он ставит лайк request.user, но когда ответ никому не нравится, то утверждение empty должно работать, но оно не работает.

Кнопка Like успешно отображается через тег empty, но не работает.

Я пробовал удалить оператор else, но он все равно не работает.

Я буду очень признателен за вашу помощь. Спасибо

Вернуться на верх