0

Django を独学しようとしていますが、問題が発生しています。Generic Views は素晴らしいアイデアのように思えますが、個人的には、ドキュメントが少し不可解であることに気付きます (たぶん、私は気が狂っているのかもしれません)。そのため、特にArchieveIndexViewで日付ベースのジェネリックビューを使用しようとしています。

djangoproject.com 以外の例をいくつか試してみましたが、まだ問題があります。このサイトで提供されている例を使用しました。

これが私の現在project/urls.pyです。
私もこの時点で、パターン マッチングについて心配することはなく、ただ動作させようとしているだけです。

from django.conf.urls import patterns, include, url
from django.views.generic.dates import ArchiveIndexView
from blog.models import Entry

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    url(r'^$', ArchiveIndexView.as_view('date_field': 'pub_date', 'queryset': Entry.objects.all())),

    url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

    url(r'^admin/', include(admin.site.urls)),
)

このセットアップでは、ArchiveIndexView クラスを説明する行で無効な構文エラーを受け取り続けます。この行をコメントアウトすると、問題はなくなります。URL を適切なアプリに切り離すと、同じエラーが発生します。

このエラーは、コンマなどの何かが適切でないことを示唆していますが、それが何であるかはまだ結論付けていません。

ありがとうございました!

4

2 に答える 2

0

ああ。シヴァから少し押して、自分の質問を解決しました。

extra_content辞書は機能しますが、引数に対してのみ機能します。それは私がコピーしようとしていたウェブサイトでそのように行われ、ドキュメントの余分なコンテンツのために、私はその明白な問題を見落とし続けました。

from django.conf.urls import patterns, include, url
from django.views.generic.dates import ArchiveIndexView
from blog.models import Entry

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    url(r'^$', ArchiveIndexView.as_view(date_field='pub_date', queryset=Entry.objects.all())),

    url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

    url(r'^admin/', include(admin.site.urls)),
)

その上で寝る必要がありました...

于 2012-06-05T11:59:54.533 に答える
0

use the below code

from django.conf.urls import patterns, include, url
from django.views.generic.dates import ArchiveIndexView
from blog.models import Entry

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    url(r'^$', ArchiveIndexView.as_view({'date_field': 'pub_date', 'queryset': Entry.objects.all()})),

    url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

    url(r'^admin/', include(admin.site.urls)),
)

You seem to forget the {} brace required for dict in url(r'^$', ArchiveIndexView.as_view('date_field': 'pub_date', 'queryset': Entry.objects.all())), line.

于 2012-06-05T05:01:12.117 に答える