Невозможно проверить, находится ли пользователь в определенном наборе запросов в шаблоне

Я работаю над приложением, похожим на twitter. У меня есть страницы с подробным твитом и его предками и потомками, и в шаблоне я хочу проверить, нравится ли текущему пользователю твиты, которые отображаются на странице. Моя модель твита такова:

class Tweet(MPTTModel):

    text = models.CharField(max_length=140, db_index=True)
    pub_date = models.DateTimeField(auto_now_add=True)
    likes = models.ManyToManyField(User, blank=True, related_name='liked_tweets')
    retweets = models.ManyToManyField(User, blank=True, related_name='retweeted_tweets')
    user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='tweets')
    parent = TreeForeignKey('self', null=True, blank=True, on_delete=models.CASCADE, related_name='children')

В шаблоне я использую условие if:

{% if user in tweet.likes.all %}
    # do smth here
{% else %}
    # do smth else
{% endif %}

Хотя у меня есть доступ к инстансу пользователя в шаблоне с {{ user }}, условие if всегда возвращает false, даже если пользователь в наборе запросов.

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