Приложение не проверяет поля Laravel - PullRequest
0 голосов
/ 29 января 2020

У меня проблема с проверкой большого количества полей в приложении Laravel, проверкой полей в отдельном классе. Выше 14 полей проверки ошибки не возвращаются в представление при создании новой записи. Я не нашел ничего об этом в Google. Я использую Laravel Коллектив. Спасибо за помощь.

public function store(StoreDet $request, Ticket $ticket)
{
    $det = new Det($request->validated());
    $det -> ticket() -> associate($ticket);
    $det -> save();
}
<div class="col-md-2">
  {!! Form::label('truetext', 'Truetext', ['class' => 'control-label']) !!}
  {!! Form::text('truetext', old('truetext'), ['class' => 'form-control ' . ($errors->has('truetext') ? 'is-invalid' : ''), 'placeholder' => 'Type truetext']) !!}
  @error('truetext')
    <span class="invalid-feedback" role="alert">
      <strong>{{ $message }}</strong>
    </span>
  @enderror
</div>

Если вам нужно больше кода, пожалуйста, сообщите мне. Я не хотел добавлять весь вид создания новой записи.

public function rules()
{
    return [
        'det' => ['required', 'unique:dets', new DetCodeCheck, 'max:10'],
        'detname' => ['required', 'max:65'],
        'units' => ['required', 'max:11'],
        'section' => 'required',
        'test' => ['required', new TestCodeCheck, 'max:10'],
        'detorder' => ['required', 'unique:dets', 'integer'],
        'decimal' => ['required', 'integer', 'max:9'],
        'sig_figs' => ['required', 'integer', 'max:9'],
        'rounding' => ['required', 'integer', 'max:9'],
        'hilod' => ['required', 'numeric', 'between:0,99999999.99'],
        'lolod' => 'required',
        'truetext' => ['required_if:datatype,L'],
        'falsetext' => ['required_if:datatype,L'],
        'cascode' => 'required',
        'cascode2' => 'required',
        'cascode3' => 'required',
        'erescode' => 'required',
        'erescode2' => 'required',
        'esdatcode' => 'required',
        'esicas' => 'required',
        'esieddunit' => 'required'
    ];
}

}

1 Ответ

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

required_if: другое поле, значение, ...

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

Относительно ваших правил проверки в классе StoreDet

//...
'truetext' => ['required_if:datatype,L'], 
'falsetext' => ['required_if:datatype,L'],
//...

datatype attr не определено.

Fix

//...
'datatype' => ['required|in:....'],
'truetext' => ['required_if:datatype,L'], 
'falsetext' => ['required_if:datatype,L'],
//...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...