Zac*_*Zac 0 php post routing routes laravel
如果我有如下路线。
Route::post('/user/{id}', 'UserController@my_function');
Run Code Online (Sandbox Code Playgroud)
如何将控制器功能设置为这样,以便我可以使用 URL 参数和 POST 请求正文数据?我希望它类似于下面的代码,但这是正确的吗?
public function my_function($id, Request $request){}
Run Code Online (Sandbox Code Playgroud)
根据laravel docs,您的做法是正确的。
如果您的控制器方法也需要来自路由参数的输入,请在其他依赖项之后列出您的路由参数。例如,如果您的路线定义如下:
Route::put('user/{id}', 'UserController@update');
Run Code Online (Sandbox Code Playgroud)
你仍然可以通过定义你的控制器方法来输入 Illuminate\Http\Request 并访问你的 id 参数,如下所示:
这是使用您发送的数据的示例:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class UserController extends Controller
{
/**
* Update the given user.
*
* @param Request $request
* @param string $id
* @return Response
*/
public function update(Request $request, $id)
{
$request->all() // here you're acessing all the data you send it
$user = User::find($id) // here you're getting the correspondent user from the id you send it
}
}
Run Code Online (Sandbox Code Playgroud)
更多信息:文档
| 归档时间: |
|
| 查看次数: |
5072 次 |
| 最近记录: |