Оператор не существует: изменяющийся символ = целое число
Я создаю BlogApp и я работал над функцией и застрял на ошибке.
< < < <class Post(models.Model):
post_user = models.ForeignKey(User, on_delete=models.CASCADE)
post_title = models.CharField(max_length=30)
tags = models.TaggableManager()
class Comment(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
post_of = models.ForeignKey(Post, on_delete=models.CASCADE)
views.py
class page(request):
tagQuery = Tag.objects.filter(post__comment__user=request.user)
#this is showing error
subquery = Comment.objects.filter(post_of__tags__name__in=tagQuery)
context = {'subquery':subquery}
return render(request, 'page.html', context)
Он показывал
Значение QuerySet для точного поиска должно быть ограничено одним результатом с помощью нарезки.
Так что я использовал __in
, но потом он продолжает показывать эту ошибку.
Любая помощь будет очень признательна. Спасибо
Вместо того чтобы фильтровать по самому набору запросов, нужно фильтровать по значениям определенного поля:
class page(request):
tagQuery = Tag.objects.filter(post__comment__user=request.user)
subquery = Comment.objects.filter(post_of__tags__name__in=tagQuery.values_list('name'))
context = {'subquery':subquery}
return render(request, 'page.html', context)