您如何验证laravel json对象请求

问题描述 投票:0回答:1

如何验证laravel请求对象,我有此条件

request()->validate([
                'avatar' => 'required|image',
                'display_name' => 'required|min:3|max:100',
                'role_id'      => 'required|integer',
                'username' => 'required|unique:users|min:4|max:15',
                'email'        => 'required|email|unique:users',
                'phone_number' => 'required|min:3',
                'password'     => 'required|min:6',
                'country_id' => 'required|integer'
]);

但是在我的请求中,它以对象形式存储,我应该怎么做才能使验证有效?

https://i.stack.imgur.com/SfSsz.png

php laravel
1个回答
0
投票

您以与验证多维数组相同的方式进行验证:

request()->validate([
    'form.avatar' => 'required|image',
    'form.display_name' => 'required|min:3|max:100',
    'form.role_id'      => 'required|integer',
    'form.username' => 'required|unique:users|min:4|max:15',
    'form.email'        => 'required|email|unique:users',
    'form.phone_number' => 'required|min:3',
    'form.password'     => 'required|min:6',
    'form.country_id' => 'required|integer'
]);

如果表单对象是对象数组,则可以使用通配符

request()->validate([
    'form.*.avatar' => 'required|image',
    'form.*.display_name' => 'required|min:3|max:100',
    'form.*.role_id'      => 'required|integer',
    'form.*.username' => 'required|unique:users|min:4|max:15',
    'form.*.email'        => 'required|email|unique:users',
    'form.*.phone_number' => 'required|min:3',
    'form.*.password'     => 'required|min:6',
    'form.*.country_id' => 'required|integer'
]);
© www.soinside.com 2019 - 2024. All rights reserved.