0

ページをロードする前にsymfonyでブラウザのバージョンを検出し、対応するアクションを実行する方法はありますか? 私は modernizr を使用することを考えていましたが、すべてのビューを書き直す必要がないことを望んでいました。

基本的に私が達成できることを望んでいたのは、フレームワークがURLをルートに一致させようとする前に、ユーザーが特定のブラウザバージョンを持っているかどうかを最初にチェックし、そうでない場合はルートで定義されたコントローラーの代わりに別のコントローラーを実行することです。 .

4

1 に答える 1

0

あなたの提案は「ベストプラクティス」ではないと思います。モバイル リクエストを Controller 内の一意の Action メソッドにルーティングすることを想定しています。別のコントローラ ベースのクライアント デバイスを持つべきではありません。これは、MVC の (V) ビューの仕事です。

Modernizr は css,js を使用したクライアント側のソリューションですが、symfony を使用している場合は、サーバー側を好むので、この質問のタイトルが必要です..「要求に応じてブラウザーを検出する」.

デバイスを検出するようにアプリをカスタム構成できますが (それほど難しくありません)、より簡単なオプションもあります。このバンドルをお試しください。https://github.com/suncat2000/MobileDetectBundle。それはすべてを行い、コントローラーの変更を行うことも、twig にブラウザーを認識させることもできるため、小さな変更を加えることができます。

于 2012-12-31T12:34:24.390 に答える