Silex重定向与YAML

时间:2015-07-11 10:01:07

标签: php symfony yaml silex

在Symfony 2中,我可以:

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

但我使用silex(使用YAML),因此没有FrameworkBundle:Redirect:urlRedirect

如何在Silex中使用简单的路线重定向YAML?

1 个答案:

答案 0 :(得分:1)

AFAIK,Silex没有这样的选项,但您可以从/ route返回重定向响应(没有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路线(你不应该,如果你需要FrameworkBundle,你应该使用Symfony而不是Silex)你总是可以用RedirectController创建自己的urlRedirectMethod(是意识到解析控制器参数不能直接工作,这是我建议你使用Symfony而不是重新使用轮子的原因之一)