fullstackru
@fullstackru

Как настроить slug в Laravel?

Ребят, проблема в том, что я создал таблицу pages в Laravel, через которую теперь генерирую маршруты для страниц. Но, например, если я ввожу подобного рода URL: domain/hfu8vhrucnd - вместо 404 ошибки вылетает - "Trying to get property of non-object".

Как сделать так, чтобы вместо "Whoops! There was an error.", приложение выдавало 404 ошибку или хотя бы, чтобы оно не просило указать свойство объекта в тех местах, где это не требуется?

Маршрут:

Route::get('/{slug?}', 'PageController@page')->name('page');


Контроллер:

public function page($slug) {
 return view('template.pages', [
  'pages' => Page::where('slug', $slug)->first()
 ]);
}
  • Вопрос задан
  • 829 просмотров
Решения вопроса 1
neuotq
@neuotq
Прокрастинация
Самый простой способ это:
public function page($slug) {
$page = Page::where('slug', $slug)->firstOrFail();

return view('template.pages', [
  'pages' => $page
 ]);
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы