我是新的symfony,我想生成或创建一个自定义404页面时,没有找到路由。
下面是我得到的错误:
FatalErrorException: Error: Call to a member function getDestinationURL() on a non-object in /home/smiles/Downloads/prototype/redirect-app/src/GS/RedirectBundle/Controller/RedirectController.php line 247
重定向功能:
public function redirectAction($source)
{
$em = $this->getDoctrine()->getManager();
$repository = $em->getRepository('GSRedirectBundle:Redirect');
$redirect = $repository->findOneBySourceURL($source);
$destination_url = $redirect->getDestinationURL();
return $this->redirect($destination_url);
}
我能做什么?
2条答案
按热度按时间xurqigkl1#
你得到的错误意味着$redirect变量是空的-没有实体被发现与这样的源URL。
你可以做全局错误页面http://symfony.com/doc/current/cookbook/controller/error_pages.html,但你也可以通过检查实体是否被找到来解决它,这在这样的情况下非常重要,例如:
bvjveswy2#
您需要创建一个文件app/Resources/TwigBundle/views/Exception/error.html.twig,在那里您可以放置自定义的错误页面。
您可以在http://symfony.com/doc/current/cookbook/controller/error_pages.html找到更多信息。