В файле views.py ==> category_posts = Post.object.filter(category=cat) возвращает пустой набор запросов. Модель 'Post' содержит примеры постов с категориями

Я создаю приложение для блога на django и столкнулся с необычной проблемой. Я не могу отфильтровать и отобразить записи блога по категориям. Пожалуйста, приведите мой код ниже. Заранее спасибо. Я потратил два полных дня, пытаясь разобраться в этом, и все еще ничего не добился.

MODELS.py

Это модель, которую я создал для статьи в блоге.

class Post(models.Model):
    title = models.CharField(max_length=255)
    author = models.ForeignKey(User, on_delete=models.CASCADE)
    body = models.TextField()
    post_date = models.DateField(auto_now_add=True)
    category = models.CharField(max_length=255, default="uncategorized")

    def __str__(self):
        return self.title + ' | ' + str(self.author)

    def get_absolute_url(self):
        #return reverse('article-detail', args=(str(self.id)))
        return reverse('homepage')

VIEWS.py

Вот представление, которое я создал для категории постов блога.

def CategoryView(request,cat):
    category_posts = Post.objects.filter(category=cat)
    return render(request,'categories.html',{'category_posts':category_posts})

URLS.py

Файл urls.py.

path('category/<str:cat>/', CategoryView, name = 'category'),

CATEGORIES.html

Это будет последняя страница отображения, где category_posts отображается как пустой queryset. Цикл for не может быть запущен, потому что category_posts является пустым набором запросов. Однословные категории также пусты (чтобы исключить проблему со slugify)

{% extends 'base.html' %}
{% load static %}
{% block content %}

<ul>
{% for post in category_posts %}
<li>
    <div class="category">
      <a href="{% url 'category' post.category|slugify %}">{{ post.category }}</a>
    </div>
    <a href="{% url 'article-detail' post.pk  %}">
      <h3><b>{{ post.title }} </b></h3>
      <p class=card-date>
        <big>{{ post.author }}</big>
        <small>-{{ post.post_date }}</small>
      </p>
      <p class="excerpt-text">{{ post.body | slice:"100" |safe}}</p>
      <div class="article-thumbnail">
         <img src="{% static "images/bg.png" %}" alt="article-thumbnail" >
      </div>
     <div class="overlay">
    </a>
</li>
{% endfor %}

{% endblock %}
Вернуться на верх