【发布时间】:2019-04-17 12:00:05
【问题描述】:
我开发了一个 Laravel 应用程序,它连接到外部 MySQL 数据库以获取报告。我正在使用 Maatwebsite/Laravel-Excel 3.1 能够导出到 excel。
在这个应用程序中,我的模型中有一个方法,它使用 Input::get() 处理 3 个变量($from、$to、$paymentType)。每当用户选择日期范围和付款类型作为其报告的过滤器时,都会调用此方法。一切正常,因为数据显示在我的视图中。
现在,当用户选择将文件导出到 Excel 时,也会调用相同的方法。同样,除了文件之外的所有工作都是空白的。
奇怪的是,如果我将所有 Input::get() 替换为静态值,例如将“2018-11-14”替换为日期,将“n”替换为付款类型,那么文件将导出数据。
我已经为此苦苦挣扎了几天,希望有人能帮助我。
谢谢,
埃内斯托
【问题讨论】:
-
你使用的是什么版本的 Laravel?
Input::get()已弃用,您应该改用$request->input()。 -
抱歉,我使用的是 Laravel 5.6。当我使用
$request->input()时,我会调用未定义的方法 Illuminate\Database\Eloquent\Builder::input()。 -
您要创建哪种格式,例如csv、xls 还是 xlsx?您也是从视图、集合或数组创建导出 excel 文件。您能否将您的部分代码(来自控制器)添加到您要导出它的位置和/或任何其他相关源 sn-p。这将有助于确定原因。
标签: laravel laravel-excel