首页 > 解决方案 > Laravel 5 表单不使用旧输入重定向

问题描述

我正在验证 laravel 表单,验证失败后旧输入不会保留。

我正在使用 laravel 5.8 表单请求验证,并且 html 输入字段填充了默认值:

public function store(ProyectoRequest $request){
    $input = $request->validated();

    DB::transaction(function () use($input) {
        $proyecto = new Proyecto();
        $proyecto->fill($input);
        $proyecto->save();
    });

    return redirect(route('proyectos.index'));
}
<div class="form-group">
     <label for="nombre">Nombre</label>
     <input type="text" class="form-control input-lg" value="{{$proyecto_nombre}}" name="nombre">
</div>

验证表单后,页面将使用默认值重新加载。我希望保留输入字段值。这就是我从文档中了解到的。

标签: phplaravelformsvalidation

解决方案


我正在寻找文档,如果这是正常行为,则没有写。

无论如何,您可以自己使用以下代码:

 <div class="form-group">
     <label for="nombre">Nombre</label>
     <input type="text" class="form-control input-lg" value="{{ old('proyecto_nombre', $proyecto_nombre) }}" name="nombre">
</div>

在 laravel 中,该old函数检索输入字段。


推荐阅读