Laravel excel передает переменную экспортеру

Я работаю с Laravel Excel 3.1, пытаясь экспортировать файл с использованием двух параметров

web.php {файл маршрута}

Route::post('/Download', 'Controller@Download');

и мой контроллер

public function Download(Request $request)
{
$StartDate  =  Input::get('StartDate');
$EndDate = Input::get('EndDate');
$exporter = app()->makeWith(UsersExport::class, compact('StartDate','EndDate'));
return $exporter->download('Summary Detail.xlsx');
}

userExporter.php

class UsersExport implements FromQuery, WithHeadings,ShouldAutoSize
{
use Exportable;
protected $StartDate,$EndDate;
public function __construct(String  $StartDate,String $EndDate)
{
$this->StartDate = $StartDate;
$this->EndDate = $EndDate;
}
public function query()
{
return databaseReceipt::query()
->whereDate('created_at', '>=', $this->StartDate)
->whereDate('created_at', '<=', $this->EndDate)
->select('id','servicename',"created_at");
}
}

когда я использую статические переменные, такие как «00:00 01/04/2017» и «00:00 01/01/2018» для даты начала и даты окончания, он работает нормально, что приводит меня к тому, что передаваемые переменные не работают


person HelloWorld    schedule 20.12.2018    source источник


Ответы (2)


извините, ребята, я понял, в чем проблема

в функции Скачать

$S = date('Y-m-d H:i:s', strtotime(strtr($request->StartDate, '/', '-')));
$E = date('Y-m-d H:i:s', strtotime(strtr($request->EndDate, '/', '-')));
return (new UsersExport($S,$E))->download('invoices.xlsx');

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

person HelloWorld    schedule 22.12.2018

person    schedule
comment
Не могли бы вы объяснить, что вы изменили и почему? И, возможно, не помещать весь код в одну строку. - person JJJ; 20.12.2018
comment
Пожалуйста, добавьте контекст в фрагмент кода на благо будущих читателей. - person DebanjanB; 20.12.2018