1

Symfony2 フレームワークで既にアプリケーションを作成しています。

アプリの現在のルート化は次のようになります。

http://testserver.loca.com/app_dev.php/Dashboard/

そのような動的プレフィックスを追加したいと思います:

http://testserver.loca.com/app_dev.php/Prefix/Dashboard/

ユーザーが特定のページに直接移動するリンクをクリックすると、動的プレフィックスが選択されます。リストは次のようになります。

http://testserver.loca.com/app_dev.php/Prefix1/Dashboard/
http://testserver.loca.com/app_dev.php/Prefix2/Dashboard/
http://testserver.loca.com/app_dev.php/Prefix3/Dashboard/

Service と ExtraLoader クラスを使用してそれを行う可能性があることを発見しましたが、これを行う方法がわかりません。

4

1 に答える 1

1

ルーティングでプレフィックスを処理できます。

/**
 * @Route("{prefix}/Dashboard", name="dynamic_dashboard")
 * @Template()
 */
public function dynamicDashboardAction($prefix)
{
    // Some way of deciding what to do based on prefix
    switch($prefix){
        case 'Prefix1':
            // Do stuff for prefix1 etc
        break;
        // etc
    }
}

dynamicDashboardAction($prefix)上記では、ルートにはメソッドに渡されるプレフィックスのプレースホルダーがあります。ビューでは、twig を使用して各リンクから正しいプレフィックスを渡すことができます。

<a href={{ path("dynamic_dashboard", {"prefix": "Prefix1"}) }}">Dashboard 1</a>
<a href={{ path("dynamic_dashboard", {"prefix": "Prefix2"}) }}">Dashboard 2</a>
于 2013-01-17T06:51:08.197 に答える