Проблема проверки файла Laravel 5.7.17 - PullRequest
0 голосов
/ 15 декабря 2018

Пример основан на регистрации Laravel.

Я добавил следующее в register.blade.php:

<div class="form-group row">
    <label for="file" class="col-md-4 col-form-label text-md-right">{{ __('Files') }}</label>

    <div class="col-md-6">
        <input type="file" id="files" name="files[]" multiple>
    </div>
</div>

Метод в RegisterController выглядит следующим образом:

protected function validator(array $data)
{
    $validator = Validator::make($data, [
        'name' => ['required', 'string', 'max:255'],
        'files.*' => ['required', 'file'],
    ]);

    dd($validator->errors());
}

Я пытаюсь загрузитьPDF и файл DOC .:

MessageBag {#236 ▼
  #messages: array:2 [▼
    "files.0" => array:1 [▼
      0 => "The files.0 must be a file."
    ]
    "files.1" => array:1 [▼
      0 => "The files.1 must be a file."
    ]
  ]
  #format: ":message"
}

Должен быть файл?Это файлы ...

Ответы [ 2 ]

0 голосов
/ 16 декабря 2018

Попробуйте это:

protected function validator(array $data)
{
    $validator = Validator::make($data, [
        'name' => ['required', 'string', 'max:255'],
        'files.*' => ['required', 'mimes:doc,docx,pdf,txt'],
    ]);

    dd($validator->errors());
}
0 голосов
/ 15 декабря 2018

просто добавьте enctype="multipart/form-data" к вашей форме:

<form method="POST" action="{{ route('register') }}" enctype="multipart/form-data">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...