1

只要有机会我们可以在 Symfony 中做到这一点:

  • 如果没有页面属性:转到/category/{category}
  • 如果有页面属性:转到/category/{category}/page/{page}

/page/{page}只有当有页面属性时,我才需要添加。


到目前为止,我只设法拥有这个:

  • 如果没有页面属性:转到/category/{category}
  • 如果有页面属性:转到/category/{category}/{page}

具有以下内容:

<route id="category_view" pattern="/category/{categoryId}/page/{page}">
    <default key="_controller">AcmeHouseBundle:House:view</default>
    <default key="categoryId">null</default>
    <default key="page">1</default>
    <requirement key="categoryId">\d+</requirement>
    <requirement key="page">\d+</requirement>
</route>

不同之处在于拥有/category/{category}/page/{page}而不是/category/{category}/{page}.

4

1 回答 1

2

目前不支持此类事情(在合并此 PR之前)。所以你只能通过两条不同的路线来实现这一点:

<route id="category_view" pattern="/category/{categoryId}">
    <default key="_controller">AcmeHouseBundle:House:view</default>
    <default key="categoryId">null</default>
    <default key="page">1</default>
    <requirement key="categoryId">\d+</requirement>
</route>

<route id="category_view_page" pattern="/category/{categoryId}/page/{page}">
    <default key="_controller">AcmeHouseBundle:House:view</default>
    <default key="categoryId">null</default>
    <default key="page">1</default>
    <requirement key="categoryId">\d+</requirement>
    <requirement key="page">\d+</requirement>
</route>
于 2013-03-23T00:49:09.390 回答