2012-07-25 21 views
8

Używam adnotacji do definiowania tras w kontrolerach i mam 15 kontrolerów. Wszystkie są wykonywane przez /path1, /path2.Jak mogę dodać prefiks trasy do wszystkich kontrolerów w Symfony2?

Czy istnieje sposób, że we wszystkich tych kontroler, mogę uzyskać do nich dostęp poprzez /admin/path1 i /admin/path2?

Nie chcę tego zmieniać, zmieniając każdy plik.

Czy mogę to zrobić z jednego miejsca? Mam na myśli cały pakiet powinien otworzyć się przez /admin, a następnie ich odpowiednie ścieżki.

Odpowiedz

15

spróbować tej

# app/config/routing.yml 
acme_hello: 
    resource: "@AcmeHelloBundle/Resources/config/routing.yml" 
    prefix: /admin 

lub w przypadku korzystania Adnotacje

resource: "@AcmeHelloBundle/Controller" 
    type:  annotation 
    prefix: /admin 
6

Użyj tego w routing.yml:

Admin: 
    resource: "@AdminBundle/Controller" 
    type: annotation 
    prefix: /admin 
2

Jeśli chcesz poprzedzić konkretnego kontrolera DevController na przykład i mieć coś takiego:

myproject.com/dev/test

w kontrolerze dodać dopiskiem Route jak w przykładzie :

/** 
* @Route("/dev") 
*/ 
class DevController extends Controller{ 

    /** 
    * @Route("/test") 
    */ 
    public function testSavingAction(){ 

     return new Response(); 
    } 
.... 
Powiązane problemy