5

例如,链接:

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

在哪里:

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/{category}

下一步该做什么还不清楚。

在 symfony 1 中,一组位于末尾的星号(“/shop/:category/*”)以及所有未明确标记的内容,并以一对

name -> value

问题:如何在 symfony 2 中描述路由?

4

1 回答 1

11

路线:

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

然后你可以解析控制器中的 $path :

class DefaultController extends Controller {
...
    public function shopAction($path) {
        // $path will be 'shop/phones/brend/apple/display/retina/color/red'
        ...
    }
...
}
于 2012-07-23T22:39:09.273 回答