當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python Django ArchiveIndexView用法及代碼示例


本文介紹 django.views.generic.dates.ArchiveIndexView 的用法。

聲明

class ArchiveIndexView

按日期顯示 “latest” 對象的頂級索引頁麵。除非您將 allow_future 設置為 True ,否則不包括日期在 future 中的對象。

祖先 (MRO)

語境

除了 django.views.generic.list.MultipleObjectMixin (通過 django.views.generic.dates.BaseDateListView )提供的上下文之外,模板的上下文將是:

  • date_list :一個 QuerySet 對象,包含根據 queryset 具有可用對象的所有年份,表示為 datetime.datetime 對象,按降序排列。

注意

  • 使用 latest 的默認 context_object_name
  • 使用 _archive 的默認 template_name_suffix
  • 默認按年提供 date_list,但可以使用屬性 date_list_period 將其更改為月或日。這也適用於所有子類視圖。

示例 myapp/urls.py

from django.urls import path
from django.views.generic.dates import ArchiveIndexView

from myapp.models import Article

urlpatterns = [
    path('archive/',
         ArchiveIndexView.as_view(model=Article, date_field="pub_date"),
         name="article_archive"),
]

示例 myapp/article_archive.html

<ul>
    {% for article in latest %}
        <li>{{ article.pub_date }}: {{ article.title }}</li>
    {% endfor %}
</ul>

這將輸出所有文章。

相關用法


注:本文由純淨天空篩選整理自djangoproject.com大神的英文原創作品 django.views.generic.dates.ArchiveIndexView。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。