当您使用@Route {$param} 执行操作时,如何将配置设置为不接收来自 url 的参数?
How to set configure to not receive parameter from url when you have Action with @Route {$param}?
初学者问题。
如果您有像这样从 URL 接收参数的操作
/**
* @Route("/{id}")
* @Template()
*/
public function showAction($id)
{
return array('entity'=> $id);
}
并且如果您希望用户在 ../web/login
后面登录 url。
如何将配置设置为不从 url 接收 login
作为参数?
我会说你应该把你的 URL 做得更好。
但是您可以通过向 {id} 参数添加验证规则(= 要求)来避免您所描述的行为。
我假设这个 id 是一个整数。然后您可以简单地执行以下操作:
/**
* @Route("/{id}", requirements={"id" = "\d+"})
*/
public function showAction($id)
{
}
仅当 id 为整数时才会匹配。否则它将寻找下一条可用路线。
初学者问题。
如果您有像这样从 URL 接收参数的操作
/**
* @Route("/{id}")
* @Template()
*/
public function showAction($id)
{
return array('entity'=> $id);
}
并且如果您希望用户在 ../web/login
后面登录 url。
如何将配置设置为不从 url 接收 login
作为参数?
我会说你应该把你的 URL 做得更好。
但是您可以通过向 {id} 参数添加验证规则(= 要求)来避免您所描述的行为。
我假设这个 id 是一个整数。然后您可以简单地执行以下操作:
/**
* @Route("/{id}", requirements={"id" = "\d+"})
*/
public function showAction($id)
{
}
仅当 id 为整数时才会匹配。否则它将寻找下一条可用路线。