2012-07-10 6 views
6

、リンクの無制限:ルーティング、例えばパラメータ

phones - category alias 
brend  - name of attribute; apple - attribute value 
display - name of attribute; retina - attribute value 
color  - name of attribute; red  - attribute value 

属性は、任意の数とすることができる:

/shop/phones/brend/apple/display/retina/color/red 

。注文は異なる場合もあります。

ルートの始まりは明確である:

/shop/{category} 

そして、何次に何をするかは不明です。

symfonyの1では、エンド・スターでセット(「/ショップ/:カテゴリ/ *」)とすべてのことが明確にマークされていなかった、と

name -> value 

質問のペアで来る:どのようにsymfony 2のルートを記述する

答えて

10

ルート:

my_shop: 
    pattern: "/{path}" 
    defaults: { _controller: "MyShopBundle:Default:shop" } 
    requirements: 
    path: "^shop/.+" 

、その後、あなただけのコントローラで$パスを解析できます。

class DefaultController extends Controller { 
... 
    public function shopAction($path) { 
     // $path will be 'shop/phones/brend/apple/display/retina/color/red' 
     ... 
    } 
... 
}