user7850120
user7850120

Reputation:

Laravel giving different controller to the same Get route

When I click to a button on the page, I want some functions to be performed and turn back to the page again.

Route::get('/team/{team}', 'HomeController@team')->name('team');
Route::get('/team/{team}', 'HomeController@makeOwner')->name('make-owner');

I have my routes like this.When I try to go blade I get this error.

"Route [team] not defined. (View: /var/www/resources/views/teams.blade.php)"

How can I solve this error or any suggestion to perform this in a better way?

Upvotes: 1

Views: 178

Answers (1)

Davit Zeynalyan
Davit Zeynalyan

Reputation: 8618

Route::get('/team/{team}', 'HomeController@team')->name('team');
Route::get('/team/{team}', 'HomeController@makeOwner')->name('make-owner');

When you use same method ans same uri in route only last route is registered.This case only second route is registered. You must be change your routes . Or in view use route('make-owner') instead of route('team').
It is more good to change routes for example

Route::get('/team/{team}', 'HomeController@team')->name('team');
Route::get('/team/{team}/make-owner', 'HomeController@makeOwner')->name('make-owner'); 

Or change one route method for example one get second put

Route::get('/team/{team}', 'HomeController@team')->name('team');
Route::put('/team/{team}', 'HomeController@makeOwner')->name('make-owner');

Upvotes: 1

Related Questions