【问题标题】:Pass old input after Form Request validation in laravel 5在 laravel 5 中的表单请求验证后传递旧输入
【发布时间】:2015-05-26 16:31:54
【问题描述】:

如果验证失败,我不清楚如何通过旧输入再次填写表单。

我的意思是,我知道如何在使用 Validator 类时传递数据,并在使用 withInput() 方法失败后重定向,但我正在尝试学习如何使用 laravel 5 中提供的表单请求。谢谢

【问题讨论】:

标签: laravel laravel-5 laravel-validation


【解决方案1】:
$username = Request::old('username');

或在视野中:

{{ old('username') }}

阅读更多:http://laravel.com/docs/5.0/requests#old-input

【讨论】:

  • {{{ old('username') }}} // 用于 laravel 早期版本的 xss 预防
  • 在这种情况下我必须使用 e() 函数 你还有其他想法来做同样的事情吗?因为我喜欢使用占位符,所以我几乎必须在每个领域都这样做
  • @Gabz 如果您使用的是 L5,则无需关注 Alupotha 评论。
  • @Alupotha 作者在问题和标签中提到了 L5。
  • 这似乎不适用于文件上传表单 - 我似乎无法在表单中填充文件上传部分 - 它只返回一个空数组
【解决方案2】:

您可以使用如下所示的旧数据进行重定向,但出现验证错误

return redirect()->back()->withErrors($validator)->withInput();

【讨论】:

  • 我试过了,但对我不起作用,如果验证条件失败,我们只需要在控制器中传递它
【解决方案3】:

<input type="text" name="username" value="{{ old('username') }}">

例如,当重定向到页面时,您还必须为 http 路由定义 withInput()

return back()->withInput();

【讨论】:

    猜你喜欢
    • 2016-05-20
    • 2017-11-07
    • 2015-05-13
    • 2016-01-20
    • 2016-08-12
    • 2015-10-05
    • 2017-05-02
    • 2015-12-24
    • 1970-01-01
    相关资源
    最近更新 更多