将CSV数据作为大块Laravel上传

时间:2019-06-25 16:14:12

标签: mysql laravel-5.8 maatwebsite-excel

我按照以下几个教程创建了代码。由于我的csv文件有超过30万行,因此我需要将其作为块上传,但无法弄清楚该怎么做。

主要关注本教程和其他一些内容,包括一些laracast讨论 https://itsolutionstuff.com/post/import-and-export-csv-file-in-laravel-58example.html

我的控制器导入功能


    public function import()
    {
        Excel::import(new ReportImport, request()->file('file'));
        return view('dashboard');
    }

我的ReportImport文件

namespace App\Imports;

use App\Report;
use Maatwebsite\Excel\Concerns\ToModel;
use Maatwebsite\Excel\Concerns\WithHeadingRow;

class ReportImport implements ToModel, WithHeadingRow
{
    /**
     * @param array $row
     *
     * @return \Illuminate\Database\Eloquent\Model|null
     */
    public function model(array $row)
    {
        return new Report([
            'district' => $row['district'],
            'age' => $row['age'],
            'email' => $row['email'],
            'name' => $row['name'],
        ]);
    }
}


Illuminate \ Http \ Exceptions \ PostTooLargeException 没有消息

0 个答案:

没有答案