2012-04-25 5 views
0

Djangoのurlconfで、スクリプトのプロービング要求に対して404を返したいと思います。それ以外の場合は、FlatPageミドルウェアを使用しているので、リクエストは不必要にデータベースに当たって対応するFlatPageを検索します。regex Djangoのurlconfで、ビューパラメータとして一致を送信せずに "OR"を照合します。

私の問題は、正確に一致する以下のパターンが、ビュー機能へのtemplate_name引数として 'php'、 'cgi'、または 'pl'を送信していることです。

urlpatterns = patterns('', 
    # don't even bother looking up a flatpage for these matches 
    (r'\.(php|cgi|pl)$', 'django.views.defaults.page_not_found'), 
    ... 
) 

マッチをパラメータとしてビューに送信せずにその正規表現または論理を行う方法はありますか?

答えて

2

非捕捉基は、(?:...)で示される。あなたはグループ以外のキャプチャを使用することができます

+0

おかげで、。 – user1355212

0

(?:regex)

だからあなたのパターンは次のようになります。それを解決

(r'\.(?:php|cgi|pl)$', 'django.views.defaults.page_not_found'),

関連する問題