【发布时间】:2023-03-12 02:47:01
【问题描述】:
我正在使用 Laravel 开发一个 Web 应用程序。我现在正在做的是为验证创建一个 FirmRequest。
这是我的表单请求。
use Illuminate\Foundation\Http\FormRequest;
class StoreVacancy extends FormRequest
{
public function authorize()
{
return true;
}
public function rules()
{
return [
'title' => 'required',
'type' => 'required',
'complex_field' => ...need complex conditional validation based on the type field
];
}
}
如果我没有使用 FormRequest,我可以在控制器中创建验证器并设置复杂的条件验证规则。
$v = Validator::make($data, [
//fields and rules
]);
$v->sometimes('reason', 'required|max:500', function ($input) {
return $input->games >= 100;
});
但问题是我没有在控制器中创建验证器。但我正在使用 FormRequest。如何在 FormRequest 中实现同样的功能?
【问题讨论】:
-
我仍然需要为此创建 $validator。我知道如何在 Controller 中使用它。如何在 FormRequest 中使用该闭包?
标签: laravel laravel-validation laravel-request