0

Django の一般的な日付ビューに関連付けられた一連の URL があります。extra_context パラメーターで、URL の年月変数に基づいてクエリセットを渡したいのですが、それらにアクセスする方法がわかりません。たとえば、

url(r'^archive/(?P<year>20[1-2][0-9])/?$', archive_year,
{'queryset': Article.objects.all(),
'date_field': 'publication_date',
'template_name': 'articles/archive-date-list.html',
'extra_context': {'content': 'articles'}},
name='article_archive'),

year発行年が gteおよび ltである最新の 5 つの記事を追加したいと思いyear + 1ます。理想的には、コレクションはコンパイル時にキャッシュされるだけでなく、リクエストごとに検索されます。このためにコンテキストプロセッサを作成したり、ビューを拡張したりする方がよいでしょうか?

4

1 に答える 1

2

汎用ビューのラッパーを作成します。

# myapp/views.py

def my_archive_year(request, year):
    # Logic to get the articles here

    return archive_year(request,
        year=year,
        date_field='publication_date',
        template_name='articles/archive-date-list.html',
        extra_context = {'content': articles}
    )

# urls.py

url(r'^archive/(?P<year>20[1-2][0-9])/?$', 'myapp.views.my_archive_year', name='article_archive'),
于 2011-06-06T15:07:15.097 に答える