次のようなルートを宣言したいと思います: /{_locale}/some/route
Silex で簡単に実行できます。
/some/route
しかし、リクエストURIで指定しなくても、デフォルトのロケール(例:「en」)で自動的に利用できるようにしたいと考えています。このように、リクエスト/some/route
はリクエストと同じ/en/some/route
です。
私の記憶が正しければ、この問題は Symfony2 では解決されていましたが、Silex では何も見つかりませんでした。
私が知っているのは、$app['controllers']->assert('_locale', 'en|fr|es')->value('_locale', 'en');
これらのメソッドをグローバルに適用するために使用できるということだけです。しかし、重複したルートを宣言する必要があり、「url_generator」または twig ヘルパーも変更する必要があると思います。
何か案は?