【发布时间】:2018-04-13 19:29:29
【问题描述】:
我在 MySQL 数据库中有这些表:
用户['id', 'name'],
角色['id', 'title'] 和
user_role ['user_id', 'role_id'] 其中两者都是外键,CASCADE。
当它捕获到异常时,用户会根据需要保留在表中,而关系表中的行会被删除。
try{
$user->delete();
}
catch (\Exception $e){
throw new \Dingo\Api\Exception\DeleteResourceFailedException('Error.');
}
这是雄辩的错误吗?
现在,我找到了解决此问题的方法,但我不确定这是否是最佳做法。有更好的方法吗?
try{
$roleId = $user->roles[0]->id;
$user->delete();
}
catch (\Exception $e){
$user->roles()->attach($roleId);
throw new \Dingo\Api\Exception\DeleteResourceFailedException('Error.');
}
【问题讨论】:
标签: mysql laravel eloquent relationship dingo-api