📅  最后修改于: 2023-12-03 15:32:36.725000             🧑  作者: Mango
在 Laravel 中,我们可以使用旧输入值来创建表单,让用户轻松地编辑他们之前提交的数据。但是,这些旧输入的值只有在出现验证错误时才存在,我们如何在不出现错误的情况下选择默认的旧值呢?
Laravel 提供了一个很简单的方法来获取旧输入的值,即使用 old()
函数。我们可以通过它来获取旧值并使用它们来填充表单字段。
<input type="text" name="email" value="{{ old('email', $defaultValue) }}">
在上述代码中,old()
函数的第一个参数是表单字段的名称,第二个参数是该字段的默认值。如果没有找到旧值,则会使用该默认值。
假设我们想要将用户的默认邮箱设置为他们的已注册邮箱。我们可以像下面这样做:
public function edit()
{
$user = auth()->user();
return view('edit', [
'user' => $user,
'email' => old('email', $user->email),
]);
}
在上述代码中,我们首先获取用户的 auth()->user()
,然后将查询到的用户数据传递给 edit
视图。除此之外,我们还将 old()
函数作为第一个参数传递给 $email
变量,并将用户的 email
地址作为其默认值。
接下来,我们只需要在 edit
视图中使用 $email
变量即可。
<input type="text" name="email" value="{{ $email }}">
这将在表单字段中自动填充用户之前设置的邮箱地址,并在用户忘记更改该字段时提供默认值。
在 Laravel 中,使用旧值来填充表单字段非常容易。只需在使用 old()
函数时为每个表单字段提供默认值即可。这将使用户能够轻松地编辑他们之前提交的数据,并将为您节省大量时间和精力。