📜  Laravel表单(1)

📅  最后修改于: 2023-12-03 15:02:39.407000             🧑  作者: Mango

Laravel表单介绍

Laravel表单是指在Laravel框架下所使用的表单元素,这些元素包括输入框、选择框、单选框、多选框等。

Laravel表单使用

在Laravel中使用表单非常简单,只需要使用表单助手函数即可创建表单元素。

// 创建一个表单
<form action="/foo/bar" method="POST">
    @csrf
    <label for="name">Name:</label>
    <input type="text" name="name" id="name">
    <button type="submit">Submit</button>
</form>

在Laravel表单中,我们可以使用 {{ csrf_field() }} 函数生成csrf令牌,以确保请求的安全性。

Laravel表单助手函数可以简化表单创建的过程。例如下面的代码是创建一个select下拉框。

// 创建 select 下拉框
<select name="size">
    <option value="small">Small</option>
    <option value="medium">Medium</option>
    <option value="large">Large</option>
</select>
Laravel表单验证

在使用表单时,必须进行数据验证,以确保用户提交的数据的正确性和安全性。Laravel提供了一个 Illuminate\Http\Request 类,专门用于处理HTTP请求,可以通过它来验证表单数据。下面是一个示例代码:

public function store(Request $request)
{
    $validatedData = $request->validate([
        'name' => 'required|unique:categories|max:255',
    ]);

    // 存储资源
}

在以上示例中,我们使用 validate ,该函数自动验证请求数据,如果验证失败,则会返回一个错误响应。 在验证成功后,我们就可以存储资源并相应成功。

Laravel表单重定向

当表单提交失败时,我们需要将用户重定向回表单页面,并显示错误信息。 Laravel提供了 withErrors() 函数和 withInput() 函数,可以使我们轻松地实现表单重定向。下面是一个例子:

public function store(Request $request)
{
    $validatedData = $request->validate([
        'name' => 'required|unique:categories|max:255',
    ]);

    // 保存资源

    return redirect('/categories')
            ->with('success', 'Category has been created successfully.');
}

在上面的代码示例中,我们使用 withErrors() 将错误信息发送回表单,使用 withInput() 以便在表单重定向后重新填写之前提交的数据。

Laravel表单总结

在Laravel中,使用表单非常简单。我们可以通过Laravel表单助手函数快速创建表单元素,通过 validate 函数验证请求数据,并使用 withErrorswithInput 函数在表单重定向后显示错误信息和重填之前提交的数据。这使得在Laravel应用中,表单处理非常简单和可维护。