Отображение только одного значения столбца value в шаблонах django
Я использую post_list для своего сайта. Я добавил колонку "тип в моей модели", но я могу загрузить ее только в цикле "for", и в итоге она отображает несколько "типов" в моем шаблоне. Но я хочу отобразить его только один раз в верхней части моей веб-страницы:
Вот пример с 2 постами с одинаковым "типом" :
Если у меня только один пост в этом "типе" - это хорошо: хорошо
model.py
class Post(models.Model):
title = models.CharField(max_length=200, unique=True)
slug = models.SlugField(max_length=200, unique=True)
author = models.ForeignKey(User, on_delete= models.CASCADE,related_name='blog_posts')
updated_on = models.DateTimeField(auto_now= True)
content = models.TextField()
created_on = models.DateTimeField(auto_now_add=True)
status = models.IntegerField(choices=STATUS, default=0)
postpic = models.TextField(max_length=140, default='SOME STRING')
type = models.TextField(max_length=140, default='blog')
class Meta:
ordering = ['-created_on']
def __str__(self):
return self.title
Я использовал "queryset" с фильтром для создания различных представлений в зависимости от типа сообщения:
views.py:
class ProgList(generic.ListView):
queryset = Post.objects.filter(status=1, type="programmation").order_by('-created_on')
class WebList(generic.ListView):
queryset = Post.objects.filter(status=1, type="web").order_by('-created_on')
class OsintList(generic.ListView):
queryset = Post.objects.filter(status=1, type="osint").order_by('-created_on')
class ForensicList(generic.ListView):
queryset = Post.objects.filter(status=1, type="forensic").order_by('-created_on')
class PostList(generic.ListView):
queryset = Post.objects.filter(status=1, type="blog").order_by('-created_on')
Я думаю, что есть лучший способ сделать это, но я ноб в django.
И, наконец, я загружаю посты в один шаблон под названием post_list.html :
Спасибо за помощь! (если у вас есть лучший способ работы с views.py, я беру его)