Не могу обратиться к полю в модели в шаблоне Django?

Мне нужно проверять если юзер есть в списке тех, кто добавил викторину в закладки, то отобразить одно, иначе - другое. Вот модель закладки:

class Bookmark(models.Model):
    """Bookmar for a quiz"""
    quiz = models.ForeignKey(
        Quiz,
        on_delete=models.PROTECT,
        verbose_name='Викторина',
        related_name='bookmarks'
    )
    user = models.ForeignKey(
        settings.AUTH_USER_MODEL,
        on_delete=models.CASCADE,
        verbose_name='Пользователь',
        related_name='bookmarks'
    )

У меня есть такой шаблон и созрел вопрос как проверять юзера на наличие закладки к этой викторине

<span class="quiz__bookmarks ml-3">
            {% if user in quiz.get_bookmarks_users %}
              <i class="fas fa-star bookmarked-star"></i>
            {% else %}
              <i class="far fa-star"></i>
            {% endif %}
            {{ quiz.get_bookmarks_count }}
</span>

Следовательно попытался сделать в модели метод для получения всех юзеров, добавивших в закладки эту викторину

def get_bookmarks_users(self):
        return self.bookmarks.all().user

Дело в том, что мне не нужно выводить все закладки. Мне просто нужно на записи поставить звезду, если пользователь добавил эту запись в закладки то звезда горит, иначе нет. Как это сделать?

Делал через цикл в views, клал всех юзеров из всех закладок на этой записи в массив и там проверял if user in array звезда горит, иначе нет, но мне кажется такой вариант медленный и неэффективный


Ответы (0 шт):