При попытке импортировать XLS я получаю следующую ошибку
Unable to resolve NULL driver for [Maatwebsite\Excel\Transactions\TransactionManager].
Код для импорта:
Excel::import(new ProdutosImport, $file)
И фактический импорт
<?php
namespace App\Imports;
use App\Produto;
use Maatwebsite\Excel\Concerns\OnEachRow;
use Maatwebsite\Excel\Concerns\WithHeadingRow;
class ProdutosImport implements OnEachRow, WithHeadingRow
{
/**
* <strong i="27">@param</strong> array $row
*
* <strong i="28">@return</strong> \Illuminate\Database\Eloquent\Model|null
*/
public function onRow($row)
{
$row = $row->toArray();
if ($row['nmero_do_pedido'] !== null && $row['sku'] !== null) {
$produto = Produto::firstOrNew(['id_venda' => $row['nmero_do_pedido'], 'sku' => $row['sku'], 'sequeencia' => null]);
$produto->id_venda = $row['nmero_do_pedido'];
$produto->sequeencia = null;
$produto->sku = $row['sku'];
$produto->data_pagamento = $row['data_de_pagamento'];
$produto->estado_pagamento = $row['status_do_pagamento'];
$produto->titulo_produto = $row['nome_do_produto'];
$produto->sub_total = $row['valor_do_produto'];
$produto->descuento_compra = 0;
$produto->total_venda = $row['valor_do_produto'];
$produto->save();
}
}
}
Ожидаемое поведение:
Импортируйте файл.
Фактическое поведение:
Ошибки с
Unable to resolve NULL driver for [Maatwebsite\Excel\Transactions\TransactionManager].
Несмотря на то, что я не использую Mongo, я попытался отключить транзакции, как было предложено в # 1998, но это ничего не изменило.
Вы пробовали мой ответ на https://github.com/Maatwebsite/Laravel-Excel/issues/1998#issuecomment -508995478? Похоже, вы используете неправильное значение конфигурации.
Вы пробовали мой ответ в № 1998 (комментарий) ? Похоже, вы используете неправильное значение конфигурации.
Я пробовал и то, и другое. Также пробовал конфиги по умолчанию.
Разве конфигурации по умолчанию не должны работать, раз уж я использую MySQL?
Кстати, @patrickbrouwers , я получаю то же самое сообщение «Невозможно разрешить драйвер NULL», независимо от того, есть ли у меня «db» или «null» в качестве значения для «обработчика».
Хорошо, я провел небольшое расследование, и это не ошибка.
Кэш Laravel находился на пути пакета, читающего новую опубликованную конфигурацию поставщика.
Простая конфигурация php artisan сделала это.
Я столкнулся с этой проблемой, моя проблема заключалась в том, что я использую библиотеку без добавления файла конфигурации excel.php
.
поэтому я отследил это, очистив кеш (и это сработало), затем я добавил файл конфигурации, а затем снова кэшировал свою конфигурацию.
Надеюсь, это поможет.
Самый полезный комментарий
Хорошо, я провел небольшое расследование, и это не ошибка.
Кэш Laravel находился на пути пакета, читающего новую опубликованную конфигурацию поставщика.
Простая конфигурация php artisan сделала это.