Как добавить префикс маршрута ко всем контроллерам в Symfony2?
я использую аннотации для определения маршрутов в контроллерах и у меня 15 контроллеров. Все исполняются /path1
, /path2
.
есть ли способ , которым во всех этих контроллерах я могу получить к ним доступ через /admin/path1
и /admin/path2
?
Я не хочу вводить это, изменяя каждый файл.
могу ли я сделать это из одного места? Я имею в виду, что весь пакет должен открыться через /admin
и тогда их пути.
4 ответов
попробуй такое
# app/config/routing.yml
acme_hello:
resource: "@AcmeHelloBundle/Resources/config/routing.yml"
prefix: /admin
или при использовании аннотаций
resource: "@AcmeHelloBundle/Controller"
type: annotation
prefix: /admin
использовать это в routing.yml
:
Admin:
resource: "@AdminBundle/Controller"
type: annotation
prefix: /admin
Если вы хотите префикс конкретного контроллера DevController, например, и иметь что-то вроде:
myproject.com/dev/test
в контроллере добавьте следующую аннотацию маршрута, как в Примере:
/**
* @Route("/dev")
*/
class DevController extends Controller{
/**
* @Route("/test")
*/
public function testSavingAction(){
return new Response();
}
....