2011-12-12 7 views
0

URLの後ろの最初の2文字に0eまたは0E以外のものを置いた場合、url fieldguide/0eにリダイレクトする正規表現を設定しようとしています。以下は私のurls.pyファイルにあります。正規表現がdjangoで動作しない

url(r'^fieldguide/(?P<IDmatch>0[eE]([0-9A-Fa-f]{0,14}))/$', 'treeView', name='index'), 
url(r'^fieldguide/./$', 'treeDirect', name='index'), 
url(r'^fieldguide/(?!0[Ee]$)/$', 'treeDirect', name='index'), 

最初のハンドルをユーザーがURLに正しい形式を置き、これは正常に動作します。 2番目のハンドルは、ユーザーが1文字だけを置くときに処理されます。また、うまく動作します。 3番目は私が問題を抱えているところですが、私はこれを多くの順列で試しています($などは入れないでかっこで囲っています)。誰かが私がそれを間違ってやっていると私に教えてくれる?

答えて

0

Django doesn't support verbose regexes - 「(?x)」 - (URLからのビューではなく)ビューのURLを決定するのが本当に難しくなるためです。

良いニュースは、あなただけの、次のような何かを行うことができますので、DjangoのURLは、カスケードに設計されていることである。

url(r'^fieldguide/(?P<IDmatch>0[eE]([0-9A-Fa-f]{0,14}))/$', 'treeView', name='index'), 
url(r'^fieldguide/.*$', 'treeDirect', name='index-redirect'), 
+0

働いたこと。ありがとうございました。 –

関連する問題