samuel toh
samuel toh

Reputation: 7076

How to add string id in url ? Laravel 5.3

My link href on the view is like this :

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

My routes is like this :

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

The result of url is like this :

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

My controller is like this :

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

If like that, I success get value of id

But I want change the result of url like this :

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

I want change the url like that, because on the controller I want get request like this :

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

How can I do it?

Upvotes: 0

Views: 563

Answers (2)

Zugor
Zugor

Reputation: 881

Be sure you have use

use Illuminate\Http\Request;

in your controller. And you can get like this.

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

Upvotes: 0

Andr&#233; Castelo
Andr&#233; Castelo

Reputation: 173

You can alter your controller to look like this:

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

This way the request will be injected on your method and you'll be able to access it.

Upvotes: 2

Related Questions