6

「fromdjango.views.genericimportlist_detail」が非推奨になり、Djangoから削除されたことを理解して正しいですか?

もしそうなら、適切な後継者は何ですか?

ありがとう、

-

@Gareth、ありがとう。

フォローアップの質問があります。ListViewを使用してlist_detail.object_detailをどのように置き換えますか?

インポートでのみ変更された現在のコードは次のとおりです。

from django.conf.urls.defaults import *
#from django.views.generic import list_detail
from django.views.generic.list import ListView

from announcements.models import Announcement
from announcements.views import *


announcement_detail_info = {
    "queryset": Announcement.objects.all(),
}

urlpatterns = patterns("",
    url(r"^(?P<object_id>\d+)/$", list_detail.object_detail,
        announcement_detail_info, name="announcement_detail"),
    url(r"^(?P<object_id>\d+)/hide/$", announcement_hide,
        name="announcement_hide"),
    url(r"^$", announcement_list, name="announcement_home"),
)

https://docs.djangoproject.com/en/dev/ref/class-based-views/generic-display/#listviewは、次の単一のインライン置換を示唆していないようです。

    url(r"^(?P<object_id>\d+)/$", list_detail.object_detail,
        announcement_detail_info, name="announcement_detail"),

どちらかといえば、それは追加のモデルが追加され、そのモデルが構築されることを示唆しています。

list_detail.object_detail呼び出しの迅速なインライン置換はありますか、それとももっと根こそぎにする必要がありますか?

ありがとう、

4

2 に答える 2

9

django.views.generic.list_detailDjango 1.3で非推奨になりました:

Django 1.3から、関数ベースのジェネリックビューは廃止され、クラスベースのアプローチが採用されました。

django.views.generic.list.ListView代わりに使用してください。

于 2013-03-25T21:04:18.467 に答える
7

インポート後django.views.generic.list.ListView

list_detail.object_detailに変更する必要がありますListView.as_view()

于 2013-03-27T20:16:48.903 に答える