我想知道用Laravel处理异常的最专业方法是什么。
让我们说我有帖子的表。让我们假设一个用户删除了帖子,第二个用户在2秒后做了相同的操作。然后我们抛出一个异常 - 例如PostNotFoundException。然后我想重定向用户查看带有自定义错误的帖子。这是一个好方法吗?
异常捕获:
try {
\App\Post::destroy(1);
} catch (Exception $e) {
throw new UserNotFoundException($e->getMessage());
}
PostNotFoundException :
class PostNotFoundException extends \Exception {
public function render () {
return redirect()->route('posts.index')->with([
'error' => 'User not found.'
]);
}
}
最好的方法是什么?你能给我一个例子吗?
答案 0 :(得分:0)
你真的不想抓住例外,因为它可能变得非常昂贵。你可以在delete方法中做一个简单的if语句来检查帖子的状态吗?如果您正在使用softDeletes,那么您只需检查它的值,如果不是,您将只看它是否存在。