希望在每個博客分類索引頁面中使用基於django類的listview顯示分類標題。我想要做的是在每個選定的類別頁面中顯示每個category.title。但沒有顯示。下面是模型,視圖,模板,它必須是我錯過的小東西。在django listview中顯示分類標題
# models.py
class Category(models.Model):
title = models.CharField(_('name'), max_length=100,)
slug = models.SlugField(_('url'), max_length=250, unique=True)
summary = models.TextField(_('summary'), max_length=255)
class Post(models.Model):
category = models.ForeignKey(Category))
title = models.CharField(_('title'), max_length=255)
slug = models.SlugField(_('url'), max_length=250, unique=True)
content= models.TextField(_('summary'), null=True)
# view.py
class PostCategoryMixin(object):
def get_context_data(self, **kwargs):
context = super(PostCategoryMixin, self).get_context_data(**kwargs)
context['category'] = Category.objects.filter(is_public=True)
return context
class PostList(PostCategoryMixin, ListView):
model = Post
queryset = Post.objects.filter(is_public=True)
template_name = 'post/post_list.html'
class PostCategoryView(BlogCategoryMixin, ListView):
template_name = 'post/post_list.html'
model = Post
def get_queryset(self):
return Post.objects.filter(category__slug=self.kwargs.get('slug')).filter(is_public=True)
# post_list.html
{{ category_title }}
上面的模板代碼未觸發任何可言,我該怎麼考慮所選類別頁面(例如顯示類別標題,如果選擇「軟件」類別,我希望顯示「軟件」作爲頁面標題。
是的,這確實打印出類別 - 所有類別的順序。就此而言,事情很簡單,但事情是當我點擊(例如'照片'類別)時,我希望將'照片'顯示爲類別標題 -
照片
。我應該看看什麼,猜猜這是對views.py的處理,我錯過了一些小東西。 – sunjoo 2014-10-12 11:58:01每個類別中的所有帖子都取得了良好的...只是我希望在post_list.html模板中的{{category.title}}中的每個相應類別的博客文章中打印出「category.title」 。類別有'title,slug,summary,is_public'字段。仍然有效,我或許應該再次看待所有? – sunjoo 2014-10-12 12:56:02