📅  最后修改于: 2023-12-03 15:02:36.109000             🧑  作者: Mango
在 Laravel 中,我们可以轻松地从控制器中发送 POST 请求。本文将介绍如何使用 Laravel 的内置方法来实现此目的。
首先,我们需要定义一个路由来处理我们的 POST 请求。我们可以在 routes/web.php
文件中定义路由:
Route::post('/submit', 'FormController@submit');
上述代码将会将 POST 请求的 URL /submit
映射到名为 FormController
的控制器的 submit
方法。
接下来,我们需要编写 FormController
控制器类中的 submit
方法来处理 POST 请求。例如,我们可以在 app/Http/Controllers/FormController.php
文件中编写以下示例代码:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class FormController extends Controller
{
public function submit(Request $request)
{
// 处理表单数据
$name = $request->input('name');
$email = $request->input('email');
// 发送邮件
Mail::to($email)->send(new FormSubmitted($name));
return view('form.submitted');
}
}
上述代码将会从 $request
对象中获取表单的 name
和 email
数据,发送电子邮件并返回 form.submitted
视图。
最后,我们还需要编写表单视图来允许用户输入数据并将其发送到控制器进行处理。以下是一个示例表单视图代码:
<form action="{{ url('/submit') }}" method="post">
@csrf
<div>
<label for="name">Name:</label>
<input type="text" name="name" id="name">
</div>
<div>
<label for="email">Email:</label>
<input type="email" name="email" id="email">
</div>
<button type="submit">Submit</button>
</form>
上述代码将会创建一个包含 name
和 email
字段的表单,以允许用户输入数据并将其发送到控制器进行处理。
在本文中,我们介绍了如何使用 Laravel 的内置方法来从控制器中发送 POST 请求。我们演示了如何定义路由、编写控制器方法和编写表单视图。希望本文可以帮助你更好地使用 Laravel 进行开发。