LaravelExcel:未找到接口 'App\Exports\FormView'
LaravelExcel: Interface 'App\Exports\FormView' not found
我正在使用 Laravel 5.8 和 PHP 7.4 开发我的项目,在这个项目中,我想从 table 中创建一个 Excel 文件从视图调用 students
。
这就是我所做的:
我在终端输入 composer require maatwebsite/excel
并下载了包。
我在 providers
的 config/app.php
添加了 \Maatwebsite\Excel\ExcelServiceProvider::class,
,'Excel' => \Maatwebsite\Excel\Facades\Excel::class,
作为 aliases
。
然后制作这个新的导出文件:
php artisan make:export StudentExportView --model=App\Member\Student
这个文件包含这个:
namespace App\Exports;
use App\Member\Student;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FormView;
use Maatwebsite\Excel\Facades\Excel;
class StudentExportView implements FormView
{
/**
* @return \Illuminate\Support\Collection
*/
public function view(): View
{
return view('admin.students.custom', [
'customs' => Student::all()
]);
}
}
并且在控制器中,我添加了这个方法:
public function export_view()
{
return Excel::download(new StudentExportView, 'students.xlsx');
}
还有这些通往 web.php
的路线:
Route::get('export_view','StudentAdminController@export_view')->name('students.export_view');
但是当我出来的时候,我得到这个错误:
Symfony \ Component \ Debug \ Exception \ FatalThrowableError
(E_ERROR)
Interface 'App\Exports\FormView' not found
那么这里出了什么问题?
备注
如果我从导出 Class 中删除 use Maatwebsite\Excel\Concerns\FormView;
, 空 excel 文件下载
包裹是"maatwebsite/excel": "^3.1"
它 FromView
不是 FormView
。
use Maatwebsite\Excel\Concerns\FromView;
class StudentExportView implements FromView
我正在使用 Laravel 5.8 和 PHP 7.4 开发我的项目,在这个项目中,我想从 table 中创建一个 Excel 文件从视图调用 students
。
这就是我所做的:
我在终端输入 composer require maatwebsite/excel
并下载了包。
我在 providers
的 config/app.php
添加了 \Maatwebsite\Excel\ExcelServiceProvider::class,
,'Excel' => \Maatwebsite\Excel\Facades\Excel::class,
作为 aliases
。
然后制作这个新的导出文件:
php artisan make:export StudentExportView --model=App\Member\Student
这个文件包含这个:
namespace App\Exports;
use App\Member\Student;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FormView;
use Maatwebsite\Excel\Facades\Excel;
class StudentExportView implements FormView
{
/**
* @return \Illuminate\Support\Collection
*/
public function view(): View
{
return view('admin.students.custom', [
'customs' => Student::all()
]);
}
}
并且在控制器中,我添加了这个方法:
public function export_view()
{
return Excel::download(new StudentExportView, 'students.xlsx');
}
还有这些通往 web.php
的路线:
Route::get('export_view','StudentAdminController@export_view')->name('students.export_view');
但是当我出来的时候,我得到这个错误:
Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR)
Interface 'App\Exports\FormView' not found
那么这里出了什么问题?
备注
如果我从导出 Class 中删除 use Maatwebsite\Excel\Concerns\FormView;
, 空 excel 文件下载
包裹是"maatwebsite/excel": "^3.1"
它 FromView
不是 FormView
。
use Maatwebsite\Excel\Concerns\FromView;
class StudentExportView implements FromView