@rubenochoa Request::is is slash-sensitive
in routes you have /home, but checks home (without slash). Remove slash in routes file
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
I am working on a project from laravel 5.4 to the latest version...everything was okey until using request to navbar.blade.php:
<li class="{{Request::is('home') ? 'active' : ''}}"><a href="/home">Home</a></li>
<li class="{{Request::is('about') ? 'active' : ''}}"><a href="/about">About</a></li>
<li class="{{Request::is('contact') ? 'active' : ''}}"><a href="/contact">Contact</a></li>
My routes are:
Route::get('/home', 'PagesController@getHome');
Route::get('/about', 'PagesController@getAbout');
Route::get('/contact', 'PagesController@getContact');
Route::get('/messages', 'MessagesController@getMessages');
Route::post('/contact/submit', 'MessagesController@submit');
My pagesController:
class PagesController extends Controller
{
public function getHome(){
return view('/home');
}
public function getAbout(){
return view('/about');
}
public function getContact(){
return view('/contact');
}
}
I used: composer dumpautoload && php artisan view:clear && php artisan cache:clear && php artisan route:clear && php artisan config:clear
I tryed to make routes to laravel 8 version: '''https://laravel.com/docs/8.x/routing'''
I did everything...
My routeserviceprovider:
Route::prefix('api')
->middleware('api')
->namespace($this->namespace)
->group(base_path('routes/api.php'));
Route::middleware('web')
->namespace($this->namespace)
->group(base_path('routes/web.php'));
});
}```
I want to thank you all for your answers. The next point was to use / at routes.....so stu%^& I am feeling.
''' Route::get('/', ['App\Http\Controllers\PagesController','getHome'])->name('home'); and not Route::get('/home', ['App\Http\Controllers\PagesController','getHome'])->name('home'); '''
Please or to participate in this conversation.