gpt4 book ai didi

orm - 在 Controller 上捕获 Doctrine 异常

转载 作者:行者123 更新时间:2023-12-02 20:23:48 25 4
gpt4 key购买 nike

我正在使用带有 Doctrine 的 Symfony 4 并正在处理一个将被持久化的实体。

我想知道当持久化过程中发生异常时如何进行try\catch处理,以便我可以相应地发送不同的错误。

到目前为止,我的代码如下所示

$user->setUsername($username)
->setEmail($email)
->setPassword($password);

$em->persist($user);
$em->flush();

return $this->json(['msg'=>'some message', 201);

我希望能够决定在响应中发送什么内容,以防出现错误。

最佳答案

您可以简单地捕获错误,如下所示,但您必须检查条件。

try {
$user->setUsername($username)
->setEmail($email)
->setPassword($password);

$em->persist($user);
$em->flush();
}
catch(DBALException $e){
$errorMessage = $e->getMessage();
}
catch(\Exception $e){
$errorMessage = $e->getMessage();
}

关于orm - 在 Controller 上捕获 Doctrine 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50565834/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com