Php Laravel 5.7 |将第一个函数中用于构建视图的数据/变量传递给第二个函数以生成DOMPF文件

Php Laravel 5.7 |将第一个函数中用于构建视图的数据/变量传递给第二个函数以生成DOMPF文件,php,laravel,laravel-query-builder,Php,Laravel,Laravel Query Builder,重要提示:我不是从模型中获取数据,而是从查询生成器查询中获取数据 以下第一个功能基于用户搜索条件构建视图,并相应地过滤数据: public function updateOrderList(Request $request) { *** Query : I didn't display the query since to long because of around 20 joins *** $orders->where('orders_detail_new.dele

重要提示:我不是从模型中获取数据,而是从查询生成器查询中获取数据

以下第一个功能基于用户搜索条件构建视图,并相应地过滤数据:

public function updateOrderList(Request $request) {

    *** Query : I didn't display the query since to long because of around 20 joins ***

    $orders->where('orders_detail_new.deleted_at', '=', NULL);
    $orders->distinct();
    $orders  = $orders->get();

    return view('labo_orders_mgt_view_index', compact('orders'));

}
美元订单返回的收款:

Collection {#2308 ▼
  #items: array:34 [▼
    0 => {#2309 ▶}
    1 => {#2311 ▶}
    2 => {#2317 ▶}
    3 => {#2310 ▶}
    4 => {#2313 ▶}
    5 => {#2314 ▶}
    6 => {#2315 ▶}
    7 => {#2318 ▶}
    etc.
  ]
}
我想使用与构建过滤后的新视图相同的$orders数据:

    return view('labo_orders_mgt_view_index', compact('orders'));
要使用以下第二个函数生成PDF文件:

public function export_pdf() {

    $pdf = PDF::loadView('pdf.laboratory_list', compact('orders'));
    return $pdf->download('laboratory_list.pdf');

}
我已经完成了我的家庭作业,并试图在现有的stackoverflow问题和其他论坛中找到解决方案,但其中大多数涉及基于模型构建的数据。我现在不得不使用这个基于查询生成器的功能,无法切换到基于模型的解决方案

我还尝试将$orders数据传递到会话中,但我发现这不是正确的选择


我希望您能给我一些建议来解决这个棘手的问题。

也许您可以将整个
$orders
生成代码转移到另一个可重用的函数中

私有函数getOrders(){
/*跳过*/
$query->where('orders\u detail\u new.deleted\u at','=',NULL);
$query->distinct();
返回$query->get();
}
公共函数updateOrderList(请求$Request){
$orders=$this->getOrders();
返回视图(“labo_orders_mgt_view_index”)、压缩视图(“orders”);
}
公共函数导出(pdf){
$orders=$this->getOrders();
$pdf=pdf::loadView('pdf.laboratory_list',compact('orders');
返回$pdf->下载('laboratory_list.pdf');
}

斯大林科受到好评,谢谢。明天我将进行测试,因为现在是越南的傍晚,我将向您通报对我有很大帮助的结果@Stalinko,仍然存在此更改的连续问题,但我会解决它,感谢您的解决方案您正在与控制器返回视图的问题,从这个角度来看,有一个链接调用一个新函数?