如何访问Laravel 5.1验证规则

时间:2018-05-19 14:14:13

标签: php laravel validationrules

如何访问 Laravel 5.1 为我们提供验证的所有方法。例如,我已经使用artisan命令 php artisan make:request EventRequest 在该文件中进行了自定义请求,有一个公共函数rules(){return [];在该函数中,你可以指定html属性名称和你需要的验证规则。如何访问这些验证规则(这些规则的路径)。 请注意,我不想制定自定义验证规则,我必须访问现有规则。

2 个答案:

答案 0 :(得分:0)

在你的控制器中用你的验证命名空间替换Request,可能就像这个App\Http\Requests\EventRequest所以它应该是这样的。

public function store(Request $requests)
{
   // code here
}

public function store(App\Http\Requests\EventRequest $requests) 
{
   // code here
}

或者您可以像这样使用验证命名空间

use App\Http\Requests\EventRequest;

SomeControllerClass extends Controller { 
    public function store(EventRequest $requests) 
    {
       // code here
    }
} 

希望有所帮助。

答案 1 :(得分:0)

我确信你已经知道记录在案的list of available validation rules

如果您只想访问用于评估这些规则的代码:在Laravel 5.1中,这些内置规则名称将映射到直接在Validator class上定义的方法。 (您也可以查看API reference for that class

例如,'digits_between'最终会在该类上使用validateDigitsBetween()方法。但是,由于这些是受保护的方法,因此您无法直接自己调用它们。您必须使用Validator::make($request, $rules)。请参阅docs on this

(在Laravel 5.6中,这些方法属于一个名为ValidatesAttributes的特征。因此,如果出于某种原因你想直接使用它们,你可以在你的课堂上使用这个特性。)