2013-03-23 5 views
1

우리가 심포니에서이 작업을 수행 할 수있는 모든 기회 :조건부 URL/라우팅 symfony2 : 깨끗한 URL을

  • 이없는 경우 페이지 속성 : 있는 경우 /category/{category}
  • 로 이동 페이지 속성 : /category/{category}/page/{page}
내가해야

로 이동 페이지 속성이있는 경우에만 dd /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}/category/{category}/page/{page} 데에있다.

  • 답변

    2

    현재로서는 (this 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> 
    
    +0

    네, 감사 @lazyhammer! – Mick

    +0

    도와 드리겠습니다. 그리고 구문 강조와 함께 도움을 주셔서 감사합니다 :) – lazyhammer

    관련 문제