我刚刚发现了ParamConverter语法。
以下是the doc所说的内容:
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use Sensio\Bundle\FrameworkExtraBundle\Configuration\ParamConverter; /** * @Route("/blog/{id}") * @ParamConverter("post", class="SensioBlogBundle:Post") */ public function showAction(Post $post) { }
引擎盖下发生了几件事:
- ...
- 如果未找到Post对象,则会生成404响应;
- 如果找到Post对象,则定义新的post请求属性...
- ...
我尝试了这个确切的事情,如果id已知,它可以正常工作,但如果不是,那么我得到这个Symfony错误:
找不到AppBundle \ Entity \ MyCustomEntity对象。
我不应该得到404异常,将我重定向到我的自定义404页面吗?
另外,我尝试了this post建议的内容,但条件甚至没有被读取,并且再次显示相同的“找不到对象”错误。
还有其他方法让这个工作吗?
答案 0 :(得分:2)
我不应该得到404例外,它会将我重定向到我的自定义404 页面?
是的,在prod
环境
在dev
环境中,您可以对错误进行一些解释,以帮助您进行调试。