Маршрут не попадает в контроллер - PullRequest
0 голосов
/ 02 февраля 2019

Когда я пытаюсь создать представление для продукта, URL создается правильно.

http://localhost:8000/product/my-slug

Тем не менее, я получаю страницу 404 не найден, и я понятия не имею, почему.Контроллер не вызывается.

Инициирование

<a href="{{ route('product.view', $product->slug) }}">

Маршрут

Route::get('/product/{$slug}', 'ProductsController@view')->name('product.view');

Контроллер

public function view($slug)
{
    $product = Product::find($slug);

    return view('products.view', compact('product'));
}

Вид

<h1>{{ $product->name }}</h1>

РЕДАКТИРОВАТЬ

web.php

Route::get('/', 'ProductsController@index')->name('product.index');
Route::get('/products/create', 'ProductsController@create')->name('product.create');
Route::post('/products', 'ProductsController@store')->name('product.store');
Route::get('/product/{$slug}', 'ProductsController@view')->name('product.view');
/*Route::get('/users', 'UsersController');*/

Route::get('/contact', 'PagesController@contact');
Route::get('/about', 'PagesController@about');

1 Ответ

0 голосов
/ 02 февраля 2019

Попробуйте изменить

Route::get('/product/{$slug}', 'ProductsController@view')->name('product.view');

на

Route::get('/product/{slug}', 'ProductsController@view')->name('product.view');

Ссылка: Маршрутизация Laravel

...