Фильтр тегов в классе представления Django

Помогите добить изменения в классе-представления для фильтрации тегов. Использую django-taggit

Модель:

class Blog(models.Model):
    """Таблица блога"""

    title = models.CharField(max_length=50, verbose_name='Название задачи')
    slug = models.SlugField(max_length=50, unique=True, db_index=True, verbose_name='slug_url')
    instructions = models.TextField(verbose_name='Инструкция к задаче')
    content = models.TextField(verbose_name='Содержание')
    time_create = models.DateTimeField(auto_now_add=True, verbose_name='Дата создания')
    time_update = models.DateTimeField(auto_now=True, verbose_name='Дата изменения')
    is_published = models.BooleanField(default=True, verbose_name='Публикация')
    memes = models.ImageField(upload_to='photos/%Y/%m/%d', verbose_name='Мем', null=True)
    tags = TaggableManager()

    def __str__(self):
        return self.title

Шаблон:

<form action="{% url 'blog' %}" method="get">
            Теги:
    {% for tag in post.tags.all %}
        <input type="checkbox" name="tag" value="{{ tag.name }}">{{ tag.name }}
    {% endfor %}
        <button type="submit">Найти</button>
    </form>

Контроллер:

class BlogPage(ListView):  
    '''класс представления всех страниц блога'''

    paginate_by = 3
    model = Blog
    template_name = 'private_site/blog.html'
    context_object_name = 'posts'

    def get_context_data(self, *, object_list=None, **kwargs):
        context = super().get_context_data(**kwargs)
        context["title"] = "Блог"
        comments = Comment.objects.all()
        context['comments'] = comments
        return context

    def get_queryset(self):
        tag_query = self.request.GET.get('tag')
        if tag_query:
            return Blog.objects.filter(___________)
        else:
            return Blog.objects.filter(is_published=True)

Помогите отфильтровать по get запросу. Если прописать: return Blog.objects.filter(tags__in=[tag_query]) падает с Field 'id' expected a number but got 'ну а тут название тега'.

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