首页 > 解决方案 > Maatwebsite/Laravel-Excel 在模型中使用 Input::get() 时导出空白 excel

问题描述

我开发了一个 Laravel 应用程序,它连接到外部 MySQL 数据库以获取报告。我正在使用 Maatwebsite/Laravel-Excel 3.1 能够导出到 excel。

在这个应用程序中,我的模型中有一个方法,它使用 Input::get() 处理 3 个变量($from、$to、$paymentType)。每当用户选择日期范围和付款类型作为其报告的过滤器时,都会调用此方法。一切正常,因为数据显示在我的视图中。

现在,当用户选择将文件导出到 Excel 时,也会调用相同的方法。同样,除了文件之外的所有工作都是空白的。

奇怪的是,如果我将所有 Input::get() 替换为静态值,例如日期为“2018-11-14”,付款类型为“n”,那么文件将导出数据。

我已经为此苦苦挣扎了几天,所以我希望有人可以帮助我。

谢谢,

埃内斯托

标签: laravellaravel-excel

解决方案


首先,在控制器文件的顶部,添加:

use Illuminate\Http\Request;

然后,您可以通过以下方式访问这些字段:

$request->input('from');
$request->input('to');

假设:fromto是正确的字段名称。

您也可以request()->input('from')直接使用 etc.(注意没有 $)。

请参阅此以获取更多信息:https ://laravel.com/docs/5.6/requests


推荐阅读