Rails 2.3 のグロブ化されたルートでの正規表現マッチングに関して質問があります。このチケットは、私が抱えているのとまったく同じ問題を説明しています: Rails routes with wildcard and requirements
問題は、:property_types の正規表現をプロパティ タイプの最初のインスタンス以外のものと一致させることができず、:location_b での一致が何らかの形で壊れてしまうことです。
したがって、以下は、property_types 要件が削除された場合にのみ機能します。
/for-sale/us/ny/アパート/ロフト/ブルックリン/
map.location ":transaction/:country_code/:location_a/*property_types/:location_b",
:controller => "search",
:action => "location",
:transaction => /(for-sale|for-rent|auction|new_development)/i,
:country_code => /\w\w/i,
:location_a => /\w\w/i,
:property_types => /(apartment|loft|home|condo|multi-home|town-house)/i
配列であるグロブベッドルート全体でどのように機能するはずなのか理解できないため、property_typesの正規表現を機能させる方法を誰かが説明できることを願っています。私がリンクしたチケットは、正規表現を各タイプで一致させることが可能であることを示唆しているようですが、何も機能させることができませんでした.
URL の例: http://localhost:3000/for-sale/us/ny/apartment/loft/brooklyn