For循环没有显示在模板上



我试图在我的网站上显示新闻,但由于某种原因它没有显示,第一个循环是好的,但第二个循环没有显示任何东西。

下面是我的代码:

HTML:

<div class="container-fluid">
<div class="container">
<div class="row">
{% for cat in cats %}
<div class="col-lg-6 py-3">
<div class="bg-light py-2 px-4 mb-3">
<h3 class="m-0">{{cat.category_name}}</h3>
</div>
<div class="owl-carousel owl-carousel-3 carousel-item-2 position-relative">
{% for news in category.news_set.all %}
{% if forloop.counter == 4 %}
<div class="position-relative">
<img class="img-fluid w-100" src="{{news.cover.url}}" style="object-fit: cover;">
<div class="overlay position-relative bg-light">
<div class="mb-2" style="font-size: 13px;">
<a href="">{{news.title}}</a>
<span class="px-1">/</span>
<span>{{news.created_at}}</span>
</div>
<a class="h4 m-0" href="">{{news.description}}</a>
</div>
</div>
{% endif %}
{% endfor %}
</div>
</div>
{% endfor %}
</div>
</div>

views.py:

def home (request):   
cats = Category.objects.all()[0:4]
articles = Article.objects.all()    
return render (request,'pages/home.html',
context={
'articles': articles,
'cats': cats,
})

models.py

class Category(models.Model):
category_name = models.CharField(max_length=65)
slug = models.SlugField(unique=True)
class Article(models.Model):
title = models.CharField(max_length=65)
description = models.CharField(max_length=165)
slug = models.SlugField(unique=True)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
is_published = models.BooleanField(default=False)
cover = models.ImageField(
upload_to='newsroom/covers/%Y/%m/%d/', blank=True, default='')
category = models.ForeignKey(
Category, on_delete=models.SET_NULL, null=True, blank=True,
default=None,)
<div class="owl-carousel owl-carousel-3 carousel-item-2 position-relative">
{% for news in cat.news_set.all %}
{% if forloop.counter == 4 %}
<div class="position-relative">
<img class="img-fluid w-100" src="{{news.cover.url}}" style="object-fit: cover;">
<div class="overlay position-relative bg-light">
<div class="mb-2" style="font-size: 13px;">
<a href="">{{news.title}}</a>
<span class="px-1">/</span>
<span>{{news.created_at}}</span>
</div>
<a class="h4 m-0" href="">{{news.description}}</a>
</div>
</div>

我假设news是与范畴的关系。

最新更新