laravel -5.8 - обязательное поле для проверки, если установлен определенный переключатель - PullRequest
0 голосов
/ 09 января 2020

У меня есть кнопки буксировки radio, и они required

<div class="form-group">
    {!! Form::label('wc', trans('interface.notificationForWebMobile'), ['class'=>'col-sm-3 control-label']) !!}
<div class="col-sm-9">
     <label><input type="radio" name="web" value="web"> {{trans('interface.Website')}}</label>
     <label><input type="radio" name="web" value="clients"> {{trans('interface.mobApp')}}</label>
 </div>

, и у меня есть эти два поля.

{!! Form::text('route', null, ['class'=>'form-control', 'placeholder'=>trans('interface.notificationRoute')]) !!}

{!! Form::select('clients_view', [
                            null => 'Please select',
                            'Home' => 'Home',
                            'Search'=>'Search',
                            'Registration'=>'Registration',
                            'Login'=>'Login',], ['class'=>'form-control', 'placeholder'=>trans('interface.notificationRoute')]) !!}

Мне нужно чтобы проверить эти два поля, как требуется, в зависимости от установленного переключателя

  • , как если бы значение переключателя было web, тогда поле route необходимо
  • , и если значение радио было clients тогда требуется меню clients_view.

вот мой текущий Request

public function rules() {
        return [
            'title'   => 'required',
            'details' => 'required',
            'web'     => 'required',
            'route'     => 'required_with:',
        ];
    }

1 Ответ

0 голосов
/ 09 января 2020

Это была моя ошибка, попытаться использовать required_with, это должно быть required_if

, вот мой последний запрос, если кто-то заинтересован

return [
            'title'        => 'required',
            'details'      => 'required',
            'web'          => 'required',
            'route'        => 'required_if:web,web',
            'clients_view' => 'required_if:web,clients',
        ];
...