2017-03-17 125 views
0

上查看我的鏈接href是這樣的:如何在url中添加字符串ID? Laravel 5.3

<a href="{{ route('message.inbox.detail.id', ['id' => $message->id]) }}" class="btn btn-default"> 
    <span class="fa fa-eye"></span> {{ trans('button.view') }} 
</a> 

我的路線是這樣的:

Route::get('message/inbox/detail/{id}', ['as'=>'message.inbox.detail.id','uses'=>'[email protected]']); 

URL的結果是這樣的:

http://myshop.dev/message/inbox/detail/58cadfba607a1d2ac4000254 

我控制器是這樣的:

public function detail($id) 
{ 
    dd($id); 
} 

如果這樣,我成功獲得ID

的價值,但我想改變URL的這樣的結果:

http://myshop.dev/message/inbox/detail/id/58cadfba607a1d2ac4000254 

我想改變這樣的URL,因爲在控制器上我想get請求像這樣:

public function detail($id, Request $request) 
{ 
    dd($id, $request->all()); 
} 

我該怎麼辦?

回答

2

你可以改變你的控制器看起來像這樣:

public function detail(Request $request, $id) 
{ 
    dd($id, $request); 
} 

這樣的要求將在你的方法被注入,你就可以訪問它。

+0

它不起作用。 '$ request-> all()'的結果是空的數組 –

+0

似乎url必須像這樣改變:http://myshop.dev/message/inbox/detail/id/58cadfba607a1d2ac4000254。但我不知道如何改變它 –

+0

所以,除了我從'$ id'獲得id之外,我也想從'Request $ request'獲得id。 –

0

要確保你有你的控制器使用

use Illuminate\Http\Request; 

。 你可以得到這樣的。

public function detail(Request $request, $id) 
{ 
    dd($id, $request); 
}