下面给出一个控制器,当(new FastExcel)->import($fullPath,function($row)部分未注解时,我可以看到用户被插入到数据库中。但是当我把这个逻辑转移到一个工作中时
调用未定义的方法Rap2hpoutre\FastExcel\Facades\FastExcel::import()
该方法显然存在,因为我能够在控制器中使用它,只在工作中失败。知道为什么会这样吗
<?php
namespace App\Http\Controllers;
use App\Http\Requests\UploadContactsRequest;
use App\Imports\ContactsImport;
use App\Jobs\ProcessContactCsv;
use App\Models\Contact;
use Illuminate\Support\Facades\Storage;
use Maatwebsite\Excel\Facades\Excel;
use Rap2hpoutre\FastExcel\FastExcel;
class ContactController extends Controller
{
public function import(UploadContactsRequest $uploadContactsRequest)
{
$file = $uploadContactsRequest->file('file');
$path = $file->store('temp');
$fullPath = Storage::path($path);
ProcessContactCsv::dispatch($fullPath, auth()->user()->id);
// $contacts = (new FastExcel)->import($fullPath, function ($row) {
// $contact = new Contact([
// 'firstname' => $row['firstname'],
// 'lastname' => $row['lastname'],
// 'date_of_birth' => $row['date_of_birth']
// ]);
// $contact->owner_id = auth()->user()->id;
// $contact->save();
// return $contact;
// });
return redirect('/')->with('success', 'All good!');
}
}
个字符
1条答案
按热度按时间yv5phkfx1#
看起来这个问题是一个缓存问题,我很可能导入错误,并启动了php工匠队列:工作重新启动这个问题得到了解决