[英]Routing Issues in Symfony
目前,我的Symfony應用程序中的路由存在一個小問題,我只是想知道是否有人可以幫助我。
我在控制器中按以下確切順序設置了這兩個功能:-
/**
* @Route("{region}/{area}", name="livearea")
*/
public function liveareaAction(Request $request, $region, $area)
{
// START THE ENTITY MANAGER FOR DOCTRINE DB
$em = $this->getDoctrine()->getManager('crm');
// FIND THE LOCATION REGION
$query = $em->getRepository(ENTITY)->findOneBy(array('link' => $region));
if($query == NULL || $query->getActive() == '0') {
$slug = $region."/".$area;
return $this->redirectToRoute("livepages", array('slug' => $slug));
} else {
// CONTINUE WITH CODE
}
}
然后是這個:-
/**
* @Route("{slug}", name="livepages", requirements={"slug"=".+"})
*/
public function livepagesAction(Request $request, $slug)
{
$repository = $this->getDoctrine()->getRepository('AppBundle:Pages');
$pages = $repository->findOneBySlug($slug);
if($pages == NULL || $pages->getActive() == '0') {
throw $this->createNotFoundException('Not Found');
}
// CONTINUE TO PAGE
}
兩者相互沖突。 我希望它的工作方式是,如果livearea沒有任何內容,則強制將其重定向到livepages函數。 它有可能發生嗎?
已將其標識為重復項,但是重復項不起作用。 因此,這已被提出為新問題。
我在一個行為完全相同的項目中工作。
我會做你的情況是把livepagesAction
以上liveareaAction
,然后添加在檢查livepages
如果slug
與已知區域和面積livearea路由匹配。 如果是,請livearea
給定區域和區域的生活區。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.