gpt4 book ai didi

php - 在 laravel 中使用 Eloquent 的 find 方法时如何对未找到的记录使用react?

转载 作者:行者123 更新时间:2023-12-05 03:14:10 25 4
gpt4 key购买 nike

由于我在网上一直没有找到这方面的信息,所以我想回答一下,当Eloquent在你的表中没有找到指定的记录时,你是如何 react 的。

这方面的一个例子是,比方说,用户正在尝试使用不存在的 ID 编辑页面,因此他尝试转到 somesite.com/pages/edit/1;但是,ID 为 1 的页面不存在。

我的问题是,您是使用显示一般错误消息的内置 findOrFail() 方法,还是更好的解决方案是始终检查指定的记录是否存在,如果不存在则抛出异常?

提前致谢。

最佳答案

更好的选择是使用 findOrFail(如果按 id 查找)或 firstOrFail(如果不按 id 查找)。这样你 Laravel 会自动抛出异常,你可以进行重定向或显示 404 页面。

但是,如果您想进行自定义重定向(例如,在一种情况下重定向到主页,在其他情况下重定向到某些页面),您可以在每个 Controller 中捕获异常,然后进行重定向,例如:

try {
$record = Page::findOrFail(1);
}
catch (ModelNotFoundException $e) {
// here you can make redirection, log or anything you want
}

关于php - 在 laravel 中使用 Eloquent 的 find 方法时如何对未找到的记录使用react?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26560070/

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