#php #symfony #routing
#php #symfony #маршруты
Вопрос:
class DemoController extends Controller
{
/**
* @Route("/hello/{name}", name="_demo_hello")
* @Template()
*/
public function helloAction($name)
{
return array('name' => $name);
}
// ...
}
/** * @Route("/hello/{name}", name="_demo_hello") * @Template() */
как я могу перенести это в file routing.yml ? я хотел бы создать всю маршрутизацию в этих файлах, а не в действии.
Ответ №1:
Взгляните на это: http://symfony.com/doc/current/book/routing.html Согласно этой документации, ваши правила будут выглядеть следующим образом:
_demo_hello:
pattern: /hello/{name}
defaults:
_controller: AcmeDemoBundle:Demo:hello
Однако, насколько я знаю, вы не можете создать поведение @Template () в вашем файле маршрутизации. Вам нужно будет написать код для возврата шаблона с вашего контроллера. Вот так:
public function helloAction($name)
{
return $this->render('AcmeDemoBundle:Demo:hello.html.twig', array('name' => $name));
}