2016-05-28 12 views
2

小枝の取得、私はこの2つのコードを使用するが、それは常に現在のルートは、私が小枝に現在のルートを取得したい

コード1失敗:

{% if app.request.get('_route') == 'my_route' %} 
     //Do something 
{% endif %} 

コード2:

{% if app.request.attributes.get == 'my_route' %} 
     //Do something 
{% endif %} 
+0

を 'app.request.get( '_ルートは')'は何を返すのですか?これはうまくいくはずです。 –

+3

[Symfony 2の現在のルートを取得するには?](http://stackoverflow.com/questions/7096546/how-to-get-current-route-in-symfony-2) – Federkun

+0

@AlainTiemblo私はそれをダンプします「null」と表示されます。 –

答えて

2

をあなたのURLの最後にある "app_dev.php"を使って、デバッグし、どのルートが最下部に使われているかを確認してください。例えば、私はここで、「route1の」を示しています Debug showing route1

その後、あなたの小枝のテンプレートで、あなたがこのようなものを使用することができます

{% if app.request.attributes.get('_route') == 'route1' %} 
    <h1>test</h1> 
{% endif %} 

を、私はこの作品を検証しました。私はSymfony3を使用しています。

はたぶんもの代わりにしてみてください "app.request.attributes.get()"、これらを試してみてください。

  • app.request.pathinfo
  • app.request.uri

参照してください。それらが働くならば。ルートは確かにヌルある場合

また、試してみてください。

{% if app.request.attributes.get('_route') == '' %} 
    <h1>test</h1> 
{% endif %} 
+0

私はもう一度それをテストしましたが、うまくいきません:/ –

+0

"@"記号の左下に経路が表示されますか? –

+0

これは 'categories_index'を表示しています:) –

関連する問題