以前の一般的なビューでは、私はこのようなものを持っていました
link_info_dict = {
'queryset' : Link.objects.all(),
'date_field' : 'pub_date',
}
patterns('django.views.generic.date_based',
url(r'^links/$', 'archive_index', link_info_dict, 'coltrane_link_archive_index'),
....
)
新しいクラスベースの汎用ビューを使用すると、次のように動作するように見えます。
from django.views.generic.dates import ArchiveIndexView
....
urlpatterns = patterns('',
url(r'^links/$', ArchiveIndexView.as_view(**link_info_dict), name='coltrane_link_archive_index'),
....
)
私は物事を最善の方法で行っているかどうか疑問に思っています。「as_view」メソッドを呼び出す必要があるため、最初にビューをインポートする必要があるため、「django.views.generic.date_based」を「因数分解」することはできません。私は実際にはほぼすべての date_based ジェネリック ビューを使用しています。最初にこれらすべてのビューをインポートし、pattern('' 空のプレフィックスを正しいアプローチにしますか? すべてのアプリをこの新しいスタイルのビューに移行する場合は、正しい方法で処理することをお勧めします:)
ありがとう