Я пытаюсь импортировать файл Excel в базу данных, используя maatiswebsite.Для этого я использую очередь, потому что это займет некоторое время для импорта файла.Я хочу показать пользователю быстрое сообщение, что «ваш файл импортируется. Мы сообщим вам, как только это будет сделано».Но не в состоянии это сделать.
QUEUE_DRIVER = база данных
Вот что я сделал до сих пор -
Контроллер -
public function import(Request $request)
{
Excel::filter('chunk')->load($request->file('import_file')
->getRealPath())->chunk(250, function($reader)
{
ImportDistributor::dispatch(new ImportDistributor($reader->toArray()));
});
dd('your file is being imported. we will inform you once it is done.');
}
Работа -
public function handle()
{
if(isset($this->data) && !empty($this->data))
{
foreach($this->data as $data)
{
DB::table('user_details')->insert($data);
}
}
}
Модель -
<?php
namespace App\Model;
use Illuminate\Database\Eloquent\Model;
class UserDetailsModel extends Model
{
protected $table = 'user_details';
}
Я не могу хранить данные в user_details.