Michael
Michael

Reputation: 485

Laravel NotFoundHttpException

I have a problem with this one route.

Route::get('va/{$uniqueid}','AdminController@VaShow')->name('va');

and in controller:

  public function VaShow($uniqueid = '123'){
      dd($uniqueid);
    }

but i still get NotFoundHttpException when trying to visit route. (it have admin prefix but anyway i'm trying to access it directly with url and in view but still same) in view:

{{route('va',['uniqueid'=>$v->uniqueid])}}

and I checked in route:list, its there:

|        | GET|HEAD | admin/va/{$uniqueid}     | va                 | App\Http\Controllers\AdminControl
ler@VaShow               | web,admin    |

No idea what I did wrong

Upvotes: 5

Views: 18788

Answers (3)

Juan Giraldo Soto
Juan Giraldo Soto

Reputation: 9

You don´t need the dollar sign. You could add ? at the end of the parameter in case the parameter is optional to send.

Route::get('va/{uniqueid?}','AdminController@VaShow')->name('va');

Upvotes: 0

ThaTal
ThaTal

Reputation: 11

Try to Remove $ symbol.

Route::get('va/{uniqueid}','AdminController@VaShow')->name('va');

Upvotes: 0

aynber
aynber

Reputation: 23001

The dollar sign in your route is throwing it off. The variables in the route do not need a dollar sign:

Route::get('va/{uniqueid}','AdminController@VaShow')->name('va');

Upvotes: 6

Related Questions