Вывод не отображается в шаблоне Django для той же модели, вывод которой отображается в другом шаблоне

Я действительно новичок в Django и создаю сайт в процессе его изучения. Согласно требованиям, я должен показывать некоторые новостные статьи как на главной странице, так и на другой странице, на которую я перехожу с навигационной панели. Я отобразил список статей и отдельные детали с помощью цикла в файлах шаблона. Проблема в том, что хотя я написал цикл for для отображения новостной статьи на главной странице, ничего не отображается. Ниже приведены мои файлы models.py, views.py, app/urls.py и project/urls.py :

    #models.py
from django.contrib.auth.models import User
from django.db import models
from django.urls import reverse
from django.utils import timezone
from django.utils.translation import gettext_lazy as _

from taggit.managers import TaggableManager

from ckeditor.fields import RichTextField
class News(models.Model):
    STATUS_CHOICES = (
        ('draft', 'Draft'),
        ('published', 'Published'),
    )
    news_title = models.CharField(max_length=250)
    # slug = models.SlugField(max_length=250, unique_for_date='nw_publish', unique=True, null=True)
    slug = models.SlugField(max_length=300, unique_for_date='nw_publish')
    news_author = models.ForeignKey(User, on_delete=models.CASCADE, related_name='news_posts')
    news_body = RichTextField()
    image_header = models.ImageField(upload_to='featured_image/%Y/%m/%d/', null=True, blank=True)

    nw_publish = models.DateTimeField(default=timezone.now)
    nw_status = models.CharField(max_length=10, choices=STATUS_CHOICES, default='draft')
    news_tags = TaggableManager()

    class Meta:
        ordering = ('nw_publish',)

    def __str__(self):
        return self.news_title


 #views.py
from django.views import generic
from django.views.generic import ListView, DetailView
from django.http import Http404
from .models import Post, Report, News, Member, Project
    class NewsListView(ListView):
    model = News
    context_object_name = 'newss'
    template_name = 'blog/news.html'


class NewsDetailView(DetailView):
    model = News
    context_object_name = 'news'
    template_name = 'blog/news_detail.html'

#app/urls.py

     from django.urls import path, re_path

from . import views
from .views import Home, HomeDetail, Contact, ReportListView, ReportDetailView, NewsListView, NewsDetailView

app_name = 'blog'
urlpatterns = [
    # post views
    path('', Home.as_view(), name='home'),
    path('home/<slug:slug>/', HomeDetail.as_view(), name='details'),
    path('news/', NewsListView.as_view(), name='news_list'),
    path('news/<slug:slug>/', NewsDetailView.as_view(), name='news_detail'),
    path('contact/', Contact.as_view(), name='contact'),
]


 #project/urls.py

   
from django.conf import settings
from django.conf.urls.static import static
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
                  path('admin/', admin.site.urls),
                  path('', include('blog.urls', namespace='blog')),
                  path('ckeditor/', include('ckeditor_uploader.urls')),
                  path('members/', include('blog.urls', namespace='members')),
                  path('news/', include('blog.urls', namespace='news')),
                  path('contact/', include('blog.urls', namespace='contact')),

              ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

Теперь мой файл шаблона для нового списка содержит следующий блок кодов, и объекты отображаются :

<div class="row">
            {% for news in newss %}
                <div class="col-lg-4 wow fadeInUp" data-wow-delay="100ms">
                    <!--News Two Single-->
                    <div class="news-two__single">
                        <div class="news-two__img-box">
                            <div class="news-two__img">
                                {% if news.image_header %}
                                    <img src={{ news.image_header.url }} alt="{{ news.news_title }}">
                                {% endif %}
                                <a href={{ news.get_absolute_url }}>
                                    <i class="fa fa-plus"></i>
                                </a>
                            </div>
                            <div class="news-two__date">
                                <p>{{ news.nw_publish |date:"M d, Y" }}</p>
                            </div>
                        </div>

                        <div class="news-two__content">

                            <ul class="list-unstyled news-two__meta">
                                <li><a href="#"><i class="far fa-user-circle"></i> {{ news.news_author }}</a></li>

                            </ul>
                            <h3>
                                <a href={{ news.get_absolute_url }}>{{ news.news_title }}</a>
                            </h3>
                            <p class="news-two__text">{{ news.news_body | truncatechars:110 | safe }}</p>
                        </div>
                    </div>
                </div>
            {% endfor %}
        </div>

На моей домашней странице мне нужно добиться чего-то вроде следующего:

страница новостей

Я добавил следующий код для рендеринга объекта, но он пуст:

{% for news in newss %}
                            <img src={% static "assets/images/blog/news-one-img-1.jpg" %} alt="">
                            <a href="news-details.html">
                                <i class="fa fa-plus"></i>
                            </a>
                        </div>
                        <div class="news-one__bottom">
                            <ul class="list-unstyled news-one__meta">
                                <li>20 Jan, 2021</li>
                                <li><span>/</span></li>
                            </ul>
                            <h3 class="news-one__title">
                                <a href="news-details.html">{{ news.news_title }}</a>
                            </h3>
                        </div>
                    </div>
                {% endfor %}
            </div>
        </div>

Вывод выглядит следующим образом:

домашняя страница

Моя версия Django - 3.27.2, а версия python - 3.6.8.

Простите за такой глупый вопрос. Я пытаюсь достичь:

  1. Все новостные статьи как на главной странице, так и на странице новостей в виде списка
  2. Показать первую новость в левом поле и остальные 3 или 4 новости в правом поле

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

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