2015-07-11 5 views
0

В Symfony 2 я могу:Silex Перенаправление с YAML

root: 
    pattern:/
    defaults: 
     _controller: FrameworkBundle:Redirect:urlRedirect 
     path: /login 
     permanent: true 

Но я использую кремнезем (с YAML), так что нет FrameworkBundle:Redirect:urlRedirect.

Как я могу сделать в Silex простой маршрут Перенаправление с помощью YAML?

ответ

1

AFAIK, Silex не имеет такой вариант, но вы можете просто вернуть ответ перенаправления из вашего/маршрута (без YAML):

<?php 
// your controller.php file or something similar 
// ... 
$app->get('/', function() use ($app) { 
    // assuming you named your /login route 'login' here 
    return new RedirectResponse($app['url_generator']->generate('login'), 301); 
}) 
->bind('home'); 

Если вы настаиваете идти маршрут YAML (вы не должны» t, если вам нужен FrameworkBundle, вы должны использовать Symfony вместо Silex), вы всегда можете создать свой собственный RedirectController с urlRedirectMethod (имейте в виду, что аргументы разрешающего контроллера не будут работать напрямую, это одна из причин, по которым я предлагаю вам использовать Symfony и не отрывать колесо)

+0

Я использовал силекс, потому что думал, что могу больше контролировать t он код. Но вы в порядке, больше я прогрессирую и больше «воссоздаю» родные функции Symphony. Спасибо, ваше решение в порядке для меня. –

Смежные вопросы