【问题标题】:Laravel Validation of <input type="text">: Why 'required|string'?<input type="text"> 的 Laravel 验证:为什么是 'required|string'?
【发布时间】:2018-06-08 09:36:38
【问题描述】:

如果我错了,请纠正我:

如果我们有一些带有 &lt;input type="text" name='username'&gt; 的表单 - 当我们在该字段中输入内容(当它非空时)并提交表单时,该值将始终在服务器端为 string (Laravel),对吧? $request-&gt;username 会是一个字符串吗?

我问这个是因为我看到Laravel's authentication系统中有这样的验证规则:

public function login(Request $request)
{
    $validator = Validator::make($request->all(), [
        $this->username() => 'required|string',
        'password' => 'required|string',
    ]);
. . .

但我不明白将requiredstring 作为验证规则有什么意义?只有required 还不够吗,因为在该字段中输入的任何内容都将始终为string

【问题讨论】:

  • 它们可以是数字,日期,.. 我猜

标签: laravel laravel-5 laravel-validation


【解决方案1】:

required 表示输入不能为空,但字符串验证规则只是确保输入字段中的任何值都是字符串值的一种方式。即使输入字段类型更改为其他类型,即日期或数字,输入中也只需要一个字符串值

【讨论】:

  • 但是即使输入字段是 datenumeric - 提交的值也将 always 是一个字符串(@ 987654321@ 将是字符串)。
猜你喜欢
  • 1970-01-01
  • 2013-03-20
  • 1970-01-01
  • 2012-10-09
  • 1970-01-01
  • 2013-06-28
  • 2011-04-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多