具有不同参数的 Laravel REST 路由

Posted

技术标签:

【中文标题】具有不同参数的 Laravel REST 路由【英文标题】:Laravel REST Routes with different parameters 【发布时间】:2017-10-10 09:07:00 【问题描述】:

我正在构建一个 REST 应用程序,但我对不同路由调用相同控制器方法的最佳实践存有疑问。

示例:

Route::post('/company/id/people/store', 'PeopleController@store')

Route::post('/people', 'PeopleController@store')

在第一种情况下,我有一个额外的参数 $company_id 将人员链接到公司。 是否正确,或者我应该为每条路线使用不同的方法?

【问题讨论】:

【参考方案1】:

通常,您正在存储表单数据,因此只需使用隐藏输入添加一个额外的参数:

<input type="hidden" name="company_id" value=" $company->id ">

然后在store() 方法中你可以得到这个参数:

public function store(Request $request)

    $companyId = $request->company_id;

【讨论】:

以上是关于具有不同参数的 Laravel REST 路由的主要内容,如果未能解决你的问题,请参考以下文章

如何将没有参数的 Laravel 路由重定向到具有默认参数的控制器方法?

php中laravel框架的控制器如何获取路由传过来的可选参数?

Laravel中的路由问题,带有多个控制器和具有相同名称的不同路由[关闭]

资源文件中的 Laravel REST API 路由问题

Laravel - 使用 Javascript 调用带有所需参数的路由

Laravel 5,子域路由,带可选参数