是否将当前搜索中的数据导出到Laravel中的excel?

是否将当前搜索中的数据导出到Laravel中的excel?,excel,laravel,Excel,Laravel,搜索后,搜索结果将显示在屏幕上。我必须以excel的形式下载这些内容 Controller.php public function searchList(Request $request) { $fleet_issues = FleetIssue::all(); $list = FleetIssue::orderBy('check_at', 'desc'); $directory = FleetManagementHelper :: getFleetIssueImage

搜索后,搜索结果将显示在屏幕上。我必须以excel的形式下载这些内容

Controller.php

public function searchList(Request $request)
{
    $fleet_issues = FleetIssue::all();
    $list = FleetIssue::orderBy('check_at', 'desc');
    $directory  = FleetManagementHelper :: getFleetIssueImageDirectory();
    $fleet_issue_type = FleetIssueType::all();
    $vehicle_class = VehicleClass::orderBy('id', 'asc')->get();
    $location= Location::orderBy('id', 'asc')->get();


         if( $request->plate_number){
             $list = $list->where('plate_number', $request->plate_number );
        }


        if( $request->branch){
            $list = $location->where('id', $request->branch );
        }

        if( $request->nric){
            $list = $list->where('nric',$request->nric);                       
        }

        if( $request->fleet_issue_type_id){
            $list = $list->where('fleet_issue_type_id',$request->fleet_issue_type_id);                       
        }

    $list = $list->paginate(20);
  view('pages.control_panel.view_issues',compact('list','fleet_issues','directory','fleet_issue_type','vehicle_class','location'));
}
下面是从Export.php下载excel文件

public function downloadExcel()
{  
return Excel::download(new Export,'List.xlsx');
 }
Use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
use Maatwebsite\Excel\Concerns\WithEvents;
use Maatwebsite\Excel\Events\AfterSheet;


class Export implements FromView,ShouldAutoSize,WithHeadings, WithEvents
 {
  public function headings(): array
 {
     return [
         'Reservation Number', 'NRIC/Passport', 'Vehicle Model','Branch','Date of Checking','Issues'
     ];
 }

public function view() : View
{
    $vehicle_class = VehicleClass::orderBy('id', 'asc')->get();
    $location= Location::orderBy('id', 'asc')->get();
    $fleet_issue_type = FleetIssueType::orderBy('id', 'asc')->get();
    $list = FleetIssue::orderBy('check_at', 'desc')->paginate(20);
    $directory  = FleetManagementHelper :: getFleetIssueImageDirectory(); 

if(  $this->vehicle_model){
$list = $list->where('vehicle_model', $this->vehicle_model);
}
 return view('pages.control_panel.fleet_management.fleet_issues.list_fleet_issues',compact('vehicle_class','location','fleet_issue_type','list','directory'));

}
下面是Export.php..如何在这里过滤搜索

Export.php

public function downloadExcel()
{  
return Excel::download(new Export,'List.xlsx');
 }
Use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
use Maatwebsite\Excel\Concerns\WithEvents;
use Maatwebsite\Excel\Events\AfterSheet;


class Export implements FromView,ShouldAutoSize,WithHeadings, WithEvents
 {
  public function headings(): array
 {
     return [
         'Reservation Number', 'NRIC/Passport', 'Vehicle Model','Branch','Date of Checking','Issues'
     ];
 }

public function view() : View
{
    $vehicle_class = VehicleClass::orderBy('id', 'asc')->get();
    $location= Location::orderBy('id', 'asc')->get();
    $fleet_issue_type = FleetIssueType::orderBy('id', 'asc')->get();
    $list = FleetIssue::orderBy('check_at', 'desc')->paginate(20);
    $directory  = FleetManagementHelper :: getFleetIssueImageDirectory(); 

if(  $this->vehicle_model){
$list = $list->where('vehicle_model', $this->vehicle_model);
}
 return view('pages.control_panel.fleet_management.fleet_issues.list_fleet_issues',compact('vehicle_class','location','fleet_issue_type','list','directory'));

}

如何将搜索结果导出到excel?如何在导出中过滤搜索列表?如何像在控制器中一样在导出中传递当前请求变量?

您必须在导出类中使用当前请求变量。用于创建查询的所有参数都应包含在导出类的查询中。如何在导出中包含当前请求变量?它与控制器请求变量相同吗?您可以使用
request()
helper<代码>请求()->all()将返回所有参数。