페이지의 내용을 표시하는 PageController가 있지만 먼저 입력 한 URL이 있는지 확인해야하며이 경우에만 페이지를 표시합니다.
불행히도 검색된 페이지가 존재하지 않으면 예외가 발생합니다.
NotFoundHttpException in Handler.php line 103:
No query results for model [App\Models\PageTranslation].
여기에 내 코드가 있습니다. 오류 404가 발견되지 않으면 리디렉션을 시도하고 있지만 여전히 NotFoundHttpException을 제공합니다.
public function show($page) {
$lang = Lang::getLocale();
$page = $this->page_translation->where('slug', '=', $page)->where('lang', '=', $lang)->firstOrFail();
if(!$page) {
App::abort(404);
}
return view('front.page.show', compact('page'));
}
이 경우 사용자를 오류 404 페이지로 리디렉션하려면 어떻게해야합니까?
사용 first()
대신에 firstOrFail()
. firstOrFail()
일치하는 데이터가없고 나머지 코드를 거치지 않는 경우 즉시 실패 (404 발생)하는 반면 대신 first()
반환 null
합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다