У меня есть приложение Laravel (v6.x), развернутое с Vapor.
Я пытаюсь загрузить файл, используя форму в Laravel Nova.
Nova предлагает несколько способов загрузки, один из которых использует собственную реализацию для простоты использования, а другой - где у разработчика больше контроля.
Стандартный код:
public function fields(Request $request)
{
return [
File::make('file')
->disk('s3')
->storeSize('attachment_size')->nullable()
->path('ID-'.$request->associatedId)
->putFile()
->hideWhenUpdating()
->hideFromIndex(),
];
}
И"взять контроль":
public function fields(Request $request)
{
return [
File::make('file')
->store(function (Request $request, $model) {
// I think i can do whatever i want here.
return [
'file' => $request->file->store('/ITEM-'.$request->associatedId, 's3'),
'attachment_size' => $request->file->getSize(),
];
}),
];
}
Обе они работают, если размер файла составляет ~ 3 МБ или меньше. Тем не менее, мне нужно будет загрузить файлы размером примерно 20 ~ 200 МБ.
Всякий раз, когда я пытаюсь отправить форму, вся информация сохраняется в базе данных, и ошибки не отображаются. К сожалению, поле файла не заполнено, и загрузка не производилась.
Что мне нужно сделать, чтобы сделать возможной загрузку больших файлов в Laravel nova?