編集 - 質問が正しく調査されませんでした。問題は、地図が私がそれと思ったURLと照合されていないことが判明した。web.pyはどのようにURLマッピングを処理しますか?
私は基本的にメカニズムがどのように動作するかを理解しています:奇数番号のエントリは正規表現として扱われ、^
と$
で自動的にカプセル化されます。私が誰かが説明できることを望んでいるのは、複数のパターンが一致したときにweb.pyがどのエントリを使用するかを選択する方法です。
urls = (
'/' , 'index',
'/.*' , 'details')
は、私が最初に一致し、index
を選択するweb.pyを期待するが、代わりにそれはdetails
を選択:
例えば、我々はこのマッピングに対してURL /
にマッチしたとしましょう。どうして?最後のマッチを探すか?または最も特定の試合ですか?それが特異性なら、それはどのように決定され、文字列の長さですか?それとも予測できないのですか?
"詳細" を選択する必要があります私のために。また、コンストラクタで特定のソースコード 'https:// github.com/webpy/webpy/blob/master/web/application.py'と' handle'、 '_match'関数を見てみると最初の試合でループを止めるために...だから...あなたは狂っているはずです – Doboy
私は自分のコードをよく見て、問題はこの質問とは関係がないことに気付きました。サーバーはスクリプトを渡していますREQUEST_URIが間違っています。しかし、web.pyのアプローチをクリアしてくれてありがとう。 –