[英]How to catch ParamConverter exceptions in Symfony2?
这是我得到的例外:
尽管预计至少有一行,但未找到查询结果。
当在数据库中找不到用户 ID 时,我基本上会遇到该异常。 这是我的路线:
localhost/../user/18
和我的控制器中的代码:
public function showAction(User $user){
// ..
}
我知道我可以使用内核事件异常来处理这个问题,但是有没有更简单的方法来捕获由 ParamConverter 生成的异常?
在某些情况下,如果找不到对象,手动抛出异常很有用。 如果未找到实体,您可以通过向参数添加默认值来告诉操作跳过抛出异常。
例子:
public function showUser(User $user = null) {
if (empty($user)) {
throw new CustomExceptionYouWant();
}
...
}
您可以通过实现 ParamConverterInterface 并在其中创建您的用户 ParamConverter,创建可以用作自定义异常或进行其他处理的方法。
这是您想要创建自定义 ParamConverter 的一个很好的例子
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.