как отправить скрытый файл для просмотра laravel (5.7) - PullRequest
0 голосов
/ 04 декабря 2018

Я создаю функцию импорта для импорта файла Excel.контроллер обработает его и сохранит данные в базе данных. После этого я хочу экспортировать ошибку в файл Excel и отправить ее для просмотра.Если пользователь нажимает кнопку «Загрузить», файл Excel, содержащий ошибку, будет загружен, в противном случае ничего не делать.

Итак, я хочу отправить скрытый файл в представление, чтобы избежать сохранения файла в базе данных.

как это сделать, помогите пожалуйста

1 Ответ

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

после импорта дескриптора в контроллер, вы можете передать данные об ошибках в массив и отправить их в сессию следующим образом:

$request->session()->put('err_file', $arr_err_data);

и создать функцию для получения файла ошибки:

 public function getErrFile(){
        return Excel::create('Error', function ($excel){
            $excel->sheet('Error', function ($sheet) {
                $arr_err=Session::get('err_file');
                $sheet->fromArray($arr_err);
            });
        })->download('xlsx');
    }

Не забудьте создать маршрут для этой функции:

Route::get('/get_err_file', 'YourController@getErrFile');

В заключение, вы можете создать ссылку для ее загрузки:

<a class="btn btn-link" href="{{url('get_err_file')}}" >Download</a>

Надеюсь, она вам поможет!

...