I trying to design navigation menu, I have 3 Items like this:
Now I want to bold Pages
when user is in this section,
and if is in Add
page I want bold both Pages
and Add
my routes.php
is :
Route::group(array('prefix' => 'admin', 'before' => 'auth.admin'), function()
{
Route::any('/', 'App\Controllers\Admin\PagesController@index');
Route::resource('articles', 'App\Controllers\Admin\ArticlesController');
Route::resource('pages', 'App\Controllers\Admin\PagesController');
});
I found thid method :
$name = \Route::currentRouteName();
var_dump($name);
But this method return string 'admin.pages.index' (length=17)
Should I use splite
to get controller or Laravel have a method for this ?
We can use this. $router. currentRoute. path property in a vue router component to get the current path.
Named routing is another amazing feature of Laravel framework. Named routes allow referring to routes when generating redirects or Urls more comfortably. You can specify named routes by chaining the name method onto the route definition: Route::get('user/profile', function () { // })->name('profile');
In Blade:
<p style="font-weight:{{ (Route::current()->getName() == 'admin.pages.index' && Request::segment(0) == 'add') ? 'bold' : 'normal' }};">Pages</p>
Request::segments()
will return an array with the current url for example:
yoursite/admin/users/create
will give:
array(2) {
[0] "admin"
[1] "users"
[2] "create"
}
You may use this (to get current action, i.e. HomeController@index
)
Route::currentRouteAction();
This will return action
like HomeController@index
and you can use something like this in your view
<!-- echo the controller name as 'HomeController' -->
{{ dd(substr(Route::currentRouteAction(), 0, (strpos(Route::currentRouteAction(), '@') -1) )) }}
<!-- echo the method name as 'index' -->
{{ dd(substr(Route::currentRouteAction(), (strpos(Route::currentRouteAction(), '@') + 1) )) }}
The Route::currentRouteName()
method returns the name of your route that is used as 'as' => 'routename'
in your route declaration.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With