私はクライアント側の MVC アプリ用の JavaScript ルーター エンジンに取り組んでいます... Backbone や Spine のようなものが関係しています。
ルーターは、オプションでリソース タイトルを含み、オプションで要求形式を含む URI セグメントと一致する必要があります。
:id
次のように、 resource 、オプションの:name
セグメント、およびオプションのセグメントをキャプチャしようとしてい:format
ます。
/123 => id:'123', name: undefined, format: undefined
/123-my-name => id:'123', name:'my-name', format: undefined
/123.html => id:'123', name: undefined, format:'html'
/123-my-name.html => id:'123', name:'my-name', format:'html'
編集:ネストされたパスに一致する他のルートがあるため、この式は一致しない/123-my-name/edit
か、/123-my-name/edit.html
:name
オプションのまたはセグメントが両方とも存在しない場合は簡単に一致させることができますが、両方が存在する場合:format
は と を区別するのに苦労しています。:name
:format
助言がありますか?