Django 4 Проверить добавлена ли статья в закладки
Не могу реализовать условие, которое проверяет добавлена ли статья в закладки пользователем. Нужно сделать так, что если статья добавлена показывалась ссылка на удаление из закладок, иначе показывалась бы ссылка на добавление в закладки.
Модель для закладок:
class Bookmark(models.Model):
article = models.ForeignKey(Article, on_delete=models.CASCADE)
user = models.ForeignKey(User, on_delete=models.CASCADE)
Шаблон:
{% if post.is_bookmarked %}
<a href="#">Удалить статью</a>
{% else %}
<a href="{% url 'add_bookmark' post.id %}"></a>
{% endif %}
simple_tag:
from django import template
from app_name.models import Bookmark
register = template.Library()
@register.simple_tag(name='is_bookmarked')
def is_bookmarked(post, request):
try:
user_bookmark = Bookmark.objects.get(user=request.user, article=post)
if user_bookmark:
return True
except:
pass
return False
Подскажите, что делаю не так...