首页 > 解决方案 > 确保在 Laravel 请求中始终存在非空值的字段的最佳方法是什么

问题描述

为此,我最终做了:

    $request->validate([
        "name"    => "required|present|filled",
        "phone"   => "required|present|filled",
        "message" => "required|present|filled",
    ]);

......对我来说,这真的看起来有点矫枉过正。当我了解到他们( 、 和 )都做非常不同的事情时,我开始required这样presentfilled

这实际上是一种矫枉过正,还是实际上都需要确保表单字段始终存在于请求中,并且它的值永远不会为空。

标签: laravel

解决方案


简单required正是您所需要的。

正如文档所说:

验证中的字段必须存在于输入数据中,并且不能为空。如果以下条件之一为真,则字段被视为“空”:

  • 该值为空。
  • 该值是一个空字符串。
  • 该值是一个空数组或空 Countable 对象。
  • 该值是一个没有路径的上传文件。

推荐阅读