В настоящее время я работаю над сообщением об ошибке для шаблона, который показывает, если вам уже понравился пользователь, но он показывает всю ошибку для всей моей книги
Вот мой шаблон:
<form action="/books/{{book.id}}/like/" method="post" class="like">
{% csrf_token %}
<button type="submit" class="btn far fa-thumbs-up"></button>
{% if messages %}
<ul class="messages">
{% for message in messages %}
{% if "like_error" in message.tags %}
<li class="text-danger">{{ message }}</li>
{% endif %}
{% endfor %}
</ul>
{%endif%}
</form>
Вот мой def:
def like(request, id):
book = Book.objects.get(id=id)
user = User.objects.get(id=request.session["user_id"])
like = Like.objects.get_or_create(u_like=user, b_like=book)
if not like[1]:
messages.error(request, "Already added to favorite",
extra_tags="like_error")
return redirect("/books/")
context = {
'book_user_like': User.objects.get(id=request.session["user_id"]).user_like.all(),
'book': Book.objects.get(id=id),
}
return redirect(f"/books/{book.id}", context)
и вот мои модели:
class Like(models.Model):
u_like = models.ForeignKey(
User, related_name="user_like", on_delete=models.CASCADE)
b_like = models.ForeignKey(
Book, related_name="book_like", on_delete=models.CASCADE)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)