Laravel验证器与请求

时间:2015-06-22 11:49:27

标签: laravel laravel-5 laravel-validation

您好,

我想了解如何使用Laravel 5处理数据验证。我看到这可以使用或验证器或请求文件来完成。问题是我没有得到很多分数。

  • 使用请求文件进行验证或验证程序类有什么区别?
  • 如果我有验证条件,并且我只想在提交相关字段时使用它们,我该怎么办?如果我使用“required”关键字,它将无效,因为在未提交字段时它将失败。如果我不使用它,它将接受空字符串......

提前致谢!

2 个答案:

答案 0 :(得分:2)

1。从理论上讲,使用FormRequest控制器验证和验证之间没有区别。通常你应该使用FormRequest。这将使您的控制器保持清洁和最小化。但是有时候在控制器中使用Validator是明智的,例如你知道只有一个字段需要验证,那么使用FormRequest就太过分了。所以这是一个优先考虑的事情。

2。如果不需要该字段,则不必使用'required'。如果提交该字段,该字段的其他验证仍将运行。如果没有提交,将不会发生任何事情。

  .......
  'money' => 'numeric',
  .......

以上规则将确保货币字段仅在提交时才是数字。如果没有提交,则不会抛出任何验证错误。

我希望这会有所帮助。

答案 1 :(得分:1)

  1. 请求类是验证请求的更好方法,因为 它们有助于从构造函数方法中提取此功能, 哪个应该尽可能干净。
  2. 使用'有时'验证器。 http://laravel.com/docs/5.1/validation#conditionally-adding-rules