laravel 路由不正确
Incorrect routing with laravel
我有一个 laravel 应用程序的路由问题。
我有以下路线:
Route::get('home', array
('as' => 'home',
'uses' => 'HomeController@getHome'
));
这导致以下 url:
192.168.2.22/laravel/public/home
一切都很好。
然后我有第二条路线是这样的:
Route::get('users/{id?}', function($id) {
$user = Users::find($id);
return View::make('Account.profile')->with('user', $user);
});
这导致以下 url:
192.168.2.22/laravel/public/users/1
现在,当我从该页面再次单击主页 link 时,我得到:
192.168.2.22/laravel/public/users/home
这当然给我一个错误。
我该如何解决这个问题?
不要使用手工链接...
这样做:
<a class="navbar-brand" href="<?php echo link_to_route("home");?>">home</a>
如果您使用 php OR blade,这将起作用,但我建议像 blade 那样做:
<a class="navbar-brand" href="{{link_to_route("home")}}">home</a>
使用一些 Laravel 助手来确保您的链接始终有效:
echo link_to_route('route.name', $title, $parameters = array(), $attributes = array());
使用 {{ URL::to('home') }}
(路线的 URL)或 {{ URL::route('home') }}
(路线的名称)作为 link 的 href
属性将解决此问题.
即:
<a class="navbar-brand" href="{{ URL::route('home') }}">home</a>
我有一个 laravel 应用程序的路由问题。
我有以下路线:
Route::get('home', array
('as' => 'home',
'uses' => 'HomeController@getHome'
));
这导致以下 url:
192.168.2.22/laravel/public/home
一切都很好。
然后我有第二条路线是这样的:
Route::get('users/{id?}', function($id) {
$user = Users::find($id);
return View::make('Account.profile')->with('user', $user);
});
这导致以下 url:
192.168.2.22/laravel/public/users/1
现在,当我从该页面再次单击主页 link 时,我得到:
192.168.2.22/laravel/public/users/home
这当然给我一个错误。
我该如何解决这个问题?
不要使用手工链接...
这样做:
<a class="navbar-brand" href="<?php echo link_to_route("home");?>">home</a>
如果您使用 php OR blade,这将起作用,但我建议像 blade 那样做:
<a class="navbar-brand" href="{{link_to_route("home")}}">home</a>
使用一些 Laravel 助手来确保您的链接始终有效:
echo link_to_route('route.name', $title, $parameters = array(), $attributes = array());
使用 {{ URL::to('home') }}
(路线的 URL)或 {{ URL::route('home') }}
(路线的名称)作为 link 的 href
属性将解决此问题.
即:
<a class="navbar-brand" href="{{ URL::route('home') }}">home</a>