1

symfony2(2.0.16) ルーティングに問題があります。

次のような2つのルートを実行しようとします

route1:
  host/my/route/{param}
    requirements: 
      param: ".*[^/]$"
route2:
  host/my/route/category/{param}
    requirements: 
      param: ".*[^/]$"

ご想像のとおり、2 番目のルートは何があっても呼び出されません。

私が実際にやりたいのは検索と特殊な検索なので、ドット、プラス、スラッシュも許可する必要があります..

要件を変更できるようにスラッシュ (%2F または %252F への urlencode) をエンコードしようとしましたが、symfony は常にルーティングの前にそれをデコードするため、要件を削除するとルーティング エラーが発生します。

base64エンコーディングを使用することを考えましたが、それは私の問題の解決策ではありません..

編集:多くの異なるバンドルからルートをインポートするため、ルートの順序に依存することもできません..

4

2 に答える 2

1
#This one before the other to be considered !
route2:
  host/my/route/category/{param}
    requirements: 
      param: ".+"

route1:
  host/my/route/{param}
    requirements: 
      param: ".+"
于 2012-09-25T14:15:01.247 に答える