2

こんにちは、次のエラーが表示されます。

    error at /
    unknown specifier: ?P[

これが私の URLS ファイルの外観です。

urlpatterns = patterns('mainpage.views',
(r'^$', 'index'),
(r'^post/(?P<id>\d+)/$', 'post'),
(r'^projects/$', 'projects'),
(r'^about/$', 'about'),
(r'^tags/$', 'tags'),
(r'^tag/(?P[-_A-Za-z0-9]+)/$', 'with_tag'),
(r'^tag/(?P[-_A-Za-z0-9]+)/page/(?Pd+)/$', 'with_tag'),                  
(r'^comments/$', include('django.contrib.comments.urls'))

ビュー名 with_tag を持つ 2 つの URL は問題のある URL です。私はこのチュートリアルに従っています。

私のサイトでタグ付けが機能するようにします。私は Django タグ付け 1.3.1 と Python 2.7 を使用しています。

私のURLS.pyファイルに何が間違っているのか教えてもらえますか? 本でチュートリアルをコピーしていますが、チュートリアルで使用されているセットアップと比較して、私のセットアップには何か違うものがあるに違いありませんか?

4

1 に答える 1

9

これは django のタグ付けとは関係ありません。正規表現の構文エラーです。?Pは名前付きグループを示し、その後に名前が必要です: ?P<foo>. したがって、グループに名前を追加するか、グループに番号を付けます (つまり、?P一部を削除します)。

于 2011-07-21T10:27:52.817 に答える