如何在 laravel 中使用 get 在单页路由中使用来自同一控制器的两个功能

Posted

技术标签:

【中文标题】如何在 laravel 中使用 get 在单页路由中使用来自同一控制器的两个功能【英文标题】:how to use two functions from same controller in single page route using get in laravel 【发布时间】:2021-12-07 23:32:58 【问题描述】:

我试图在单个页面路由中使用来自一个控制器的两个不同功能

Route::get('/cart','App\Http\Controllers\Frontend\CartController@index');
Route::get('/cart','App\Http\Controllers\Frontend\CartController@alldata');

但问题是函数 alldata 在函数 index 不起作用的地方工作

【问题讨论】:

【参考方案1】:

您不能有 2 个具有相同路径的 GET 路由。

Route::get('/cart','App\Http\Controllers\Frontend\CartController@index');
Route::get('/cart/all','App\Http\Controllers\Frontend\CartController@alldata');

【讨论】:

【参考方案2】:
Route::get('/cart','App\Http\Controllers\Frontend\CartController@index');
Route::get('/cart','App\Http\Controllers\Frontend\CartController@alldata');

尝试在controller 而不是route 文件中操纵您的逻辑。

在控制器函数中使用条件。

【讨论】:

【参考方案3】:

/cart 路由被alldata() 覆盖。所以alldata() 正在调用而不是index()

请移除alldata() 的路由并传递来自index() 的数据。

【讨论】:

以上是关于如何在 laravel 中使用 get 在单页路由中使用来自同一控制器的两个功能的主要内容,如果未能解决你的问题,请参考以下文章