オプションのキーワード引数を 3 つ取る Django ビューがあります。このビューに可能な URL を一致させるための正規表現を 1 行で処理したいと考えています。URLをうまく構成したい。
例: 私の可能なパラメータは、int である start、長さ 13 の文字列である serial、および別の int である end です。
URL は次のようになります。
/main/s20130509/e20130510/ABC1234567890
or
/main/s20130509/e20130510/
or
/main/ABC1234567890
e と s の接頭辞が付いたコンポーネントはそれぞれ end と start で、ABC1234567890 はシリアルです。
これらの終了、開始、シリアル値を取得し、値 start=s20130509 などとしてビューに渡したい...
現在、順列を別の行に徹底的にリストすることでこれを行っていますが、もっと良い方法があるはずです。
私は次のようなことをしようとしています:
url(r'^base_url/(?P<serial>[^/]{13}|(?P<end>e\d{8})|(?P<start>s\d{8})/*$', view_method),
基本的に、私がやりたいことのロジックは明確です。3 つの一致のいずれかのすべてのインスタンスを取得し、それらをキーワード付きパラメーターとして渡したいのですが、これに適合する ReGex 構文を理解するためのリソースが見つかりません。
何かご意見は?私は、仕事を優雅に終わらせることは何でも喜んで行います。
御時間ありがとうございます、
ティム