рдореИрдВрдиреЗ рдЖрдпрд╛рдд рд╡рд╕реНрддреБ рд╡рд░реНрдЧ рдмрдирд╛рдпрд╛ рд╣реИ рдФрд░ ToCollection рдХреА рдЪрд┐рдВрддрд╛рдУрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рд╣реИред рдПрдХреНрд╕реЗрд▓ :: рдЖрдпрд╛рдд рдХрд░рдиреЗ рдкрд░, рдореБрдЭреЗ рдиреАрдЪреЗ Actual Behavior
рдореЗрдВ рджрд┐рдЦрд╛рдИ рдЧрдИ рддреНрд░реБрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреА рд╣реИред
рдЯреНрд░рд╛рдВрд╕реЗрдХреНрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВред рд╣рдо MongoDB рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореЙрдбрд▓ рдЖрдпрд╛рдд рдХрд░рдирд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдкреИрдХреЗрдЬ рдХреЛ рдХрд┐рд╕реА рднреА рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рддреИрдпрд╛рд░реА рдирд╣реАрдВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕реЗ рдбреЗрд╡рд▓рдкрд░ рджреНрд╡рд╛рд░рд╛ рдШрдЯрдирд╛рдУрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░:
рд╕рдВрдЧреНрд░рд╣ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХрд╛ ddред
рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░:
1) Tests\Unit\Services\Websites\WebsiteCredentialsImportServiceTest::testImportTabDelimited
Error: Call to a member function beginTransaction() on null
/var/www/vhosts/website.local/vendor/laravel/framework/src/Illuminate/Database/Concerns/ManagesTransactions.php:109
/var/www/vhosts/website.local/vendor/laravel/framework/src/Illuminate/Database/Concerns/ManagesTransactions.php:93
/var/www/vhosts/website.local/vendor/laravel/framework/src/Illuminate/Database/Concerns/ManagesTransactions.php:23
/var/www/vhosts/website.local/vendor/laravel/framework/src/Illuminate/Database/DatabaseManager.php:327
/var/www/vhosts/website.local/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:223
/var/www/vhosts/website.local/vendor/maatwebsite/excel/src/Reader.php:96
/var/www/vhosts/website.local/vendor/maatwebsite/excel/src/Excel.php:120
/var/www/vhosts/website.local/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:223
/var/www/vhosts/website.local/app/Services/Websites/WebsiteCredentialsImportService.php:198
/var/www/vhosts/website.local/app/Services/Websites/WebsiteCredentialsImportService.php:182
/var/www/vhosts/website.local/app/Services/Websites/WebsiteCredentialsImportService.php:122
/var/www/vhosts/website.local/tests/Unit/Services/Websites/WebsiteCredentialsImportServiceTest.php:25
<?php
namespace App\Imports\Websites;
use Illuminate\Support\Collection;
use Maatwebsite\Excel\Concerns\ToCollection;
/**
* Class WebsiteCredentialsImport
*
* <strong i="29">@package</strong> App\Imports\Websites
*/
class WebsiteCredentialsImport implements ToCollection
{
public function collection(Collection $rows)
{
dd(['COLLECTION' => $rows]);
}
}
$collection = Excel::import(
new WebsiteCredentialsImport,
$this->file_name,
null,
$this->reader_type
);
рд╣рдо рд╕рддреНрдпрд╛рдкрди рдФрд░ рдмреИрдЪ рдЖрд╡реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рд▓реЗрдирджреЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╡реЗ рдПрд▓реЛрдХреНрд╡реЗрдВрдЯ/рд▓рд╛рд░рд╡реЗрд▓-рдбреАрдмреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВред рдПрдХ рдкреАрдЖрд░ рдХреЛ рдорд░реНрдЬ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реБрдИ рдЬреЛ рдЗрд╕реЗ рдЙрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд┐рдХрд▓реНрдк рджреЗрддрд╛ рд╣реИ рдЬреЛ .eg Mongo . рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ
рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд▓рд╛рд░рд╡реЗрд▓-рдбреАрдмреА рд▓реЗрдирджреЗрди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реЗрдЯрд┐рдВрдЧ рд╣реЛрдЧреА + рдХрд╕реНрдЯрдо рд▓реЗрдирджреЗрди рд╣реИрдВрдбрд▓рд░ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛
рдирдорд╕реНрддреЗ !
рдореИрдВ рдмрд┐рд▓реНрдХреБрд▓ рд╕рдЯреАрдХ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реВрдВ: рдореБрдЭреЗ рдкрдврд╝рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдФрд░ рдореИрдВ рдореЛрдВрдЧреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред
рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдЙрд╕ рдХреЛрдб рдХреА рдУрд░ рд╕рдВрдХреЗрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд▓реЗрдирджреЗрди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ?
рдирдорд╕реНрддреЗ !
рдореИрдВ рдмрд┐рд▓реНрдХреБрд▓ рд╕рдЯреАрдХ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реВрдВ: рдореБрдЭреЗ рдкрдврд╝рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдФрд░ рдореИрдВ рдореЛрдВрдЧреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред
рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдЙрд╕ рдХреЛрдб рдХреА рдУрд░ рд╕рдВрдХреЗрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд▓реЗрдирджреЗрди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ?
https://github.com/Maatwebsite/Laravel-Excel/commit/13374dab1592f00f715fa0e02541ecb52217655b#diff -19c82312b0dbaba6a8955bb14fa56ff
рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдЕрдиреБрднрд╛рдЧ: https://docs.laravel-excel.com/3.1/imports/validation.html#disable -transactions
рдирдорд╕реНрддреЗ, рдореИрдВ рдПрдХ рд╣реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реВрдВ: рдореБрдЭреЗ рдПрдХ рдПрдХреНрд╕реЗрд▓ рдлрд╛рдЗрд▓ рдкрдврд╝рдиреА рд╣реИ рдФрд░ рдореБрдЭреЗ рдЗрд╕реЗ рдореЛрдВрдЧреЛрдбрдм рдореЗрдВ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред
рдореИрдВрдиреЗ рддрдп рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдм рдЬреЛ рддреНрд░реБрдЯрд┐ рд╣реИ рд╡рд╣ рд╣реИ:
"[MaatwebsiteExcel\Transactions\TransactionManager] рдХреЗ рд▓рд┐рдП NULL рдбреНрд░рд╛рдЗрд╡рд░ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрдеред"
рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП?
рдорд╣рд╛рди рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореИрдВрдиреЗ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдЖрдпрд╛рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрднреА рднреА рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдпрд╛рдд рдХреЛ рдореЙрдбрд▓ рдХреНрдпреЛрдВ рддреЛрдбрд╝рддрд╛ рд╣реИ
рдХреНрдпреЛрдВрдХрд┐ рд╕рдВрдЧреНрд░рд╣ рд▓реЗрдирджреЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдХреГрдкрдпрд╛ рдореЗрд░реА рдкрд┐рдЫрд▓реА рдЯрд┐рдкреНрдкрдгреА рджреЗрдЦреЗрдВ, рдпрд╣ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рд▓реЗрдирджреЗрди рдХреЛ рдХреИрд╕реЗ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЬрд╛рдПред
рдХреНрдпреЛрдВрдХрд┐ рд╕рдВрдЧреНрд░рд╣ рд▓реЗрдирджреЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдХреГрдкрдпрд╛ рдореЗрд░реА рдкрд┐рдЫрд▓реА рдЯрд┐рдкреНрдкрдгреА рджреЗрдЦреЗрдВ, рдпрд╣ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рд▓реЗрдирджреЗрди рдХреЛ рдХреИрд╕реЗ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЬрд╛рдПред
рдирдорд╕реНрддреЗ, рдЖрдкрдХреЗ рддреНрд╡рд░рд┐рдд рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рдореИрдВрдиреЗ рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгреА рдкрдврд╝реА, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ "[MaatwebsiteExcel \ Transactions \ TransactionManager] рдХреЗ рд▓рд┐рдП NULL рдбреНрд░рд╛рдЗрд╡рд░ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде" рдкреНрд░рд╛рдкреНрдд рд╣реБрдЖред рддреНрд░реБрдЯрд┐ред
рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рд╕рдВрдЧреНрд░рд╣ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛
рдЖрдк рд╢рд╛рдпрдж рддрдм рдЕрдкрдиреЗ рдХреЙрдиреНрдлрд┐рдЧ рдореЗрдВ рдХреБрдЫ рдЧрд▓рдд рдЯрд╛рдЗрдк рдХрд░ рд░рд╣реЗ рд╣реИрдВред NULL
рдПрдХ рд╡реИрдз рдбреНрд░рд╛рдЗрд╡рд░ рдХреА рддрд░рд╣ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред 'null'
(рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИ) рд╣реИред
рдореЗрд░реА рднреА рдпрд╣реА рд╕реНрдерд┐рддрд┐ рд╣реИ, рдореБрдЭреЗ https://docs.laravel-excel.com/3.1/imports/validation.html#disable -transactions рдкрд░ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛
рд▓реЗрдХрд┐рди, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ Custom transaction handlers
рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд╣рд╛рдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдореЗрд░реЗ рдкрд╛рд╕ рдореЛрдВрдЧреЛрдбрдм рднреА рд╣реИред рдпрд╣ https://docs.laravel-excel.com/3.1/imports/validation.html#disable -transactions рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред Thx @patrickbrouwers
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ рдЬреЛ рдореИрдВрдиреЗ #2384 . рдкрд░ рдХреА рдереА
рд╢рд╛рдпрдж рдореЗрд░рд╛ рд╕рдорд╛рдзрд╛рди рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ:
php artisan config:clear
рдХрднреА-рдХрднреА, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреИрдХреЗрдЬ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╕рдордп, рд▓рд╛рд░рд╡реЗрд▓ рдХреИрд╢ рдХреЛ рд╕рд╛рдл рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдФрд░ рдЖрдкрдХреЗ рдкреИрдХреЗрдЬ рдХреЛ рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧреАред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдбреНрд░рд╛рдЗрд╡рд░ рд╣рдореЗрд╢рд╛ NULL рдФрд░ рдЕрд╕рдлрд▓ рд░рд╣реЗрдЧрд╛ред
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ рдЬреЛ рдореИрдВрдиреЗ #2384 . рдкрд░ рдХреА рдереА
рд╢рд╛рдпрдж рдореЗрд░рд╛ рд╕рдорд╛рдзрд╛рди рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ:
php artisan config:clear
рдХрднреА-рдХрднреА, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреИрдХреЗрдЬ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╕рдордп, рд▓рд╛рд░рд╡реЗрд▓ рдХреИрд╢ рдХреЛ рд╕рд╛рдл рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдФрд░ рдЖрдкрдХреЗ рдкреИрдХреЗрдЬ рдХреЛ рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧреАред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдбреНрд░рд╛рдЗрд╡рд░ рд╣рдореЗрд╢рд╛ NULL рдФрд░ рдЕрд╕рдлрд▓ рд░рд╣реЗрдЧрд╛ред
рд╕рдмрд╕реЗ рдмрдврд╝рд┐рдпрд╛ рдЙрддреНрддрд░
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ рдЬреЛ рдореИрдВрдиреЗ #2384 . рдкрд░ рдХреА рдереА
рд╢рд╛рдпрдж рдореЗрд░рд╛ рд╕рдорд╛рдзрд╛рди рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ:
php artisan config:clear
рдХрднреА-рдХрднреА, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреИрдХреЗрдЬ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╕рдордп, рд▓рд╛рд░рд╡реЗрд▓ рдХреИрд╢ рдХреЛ рд╕рд╛рдл рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдФрд░ рдЖрдкрдХреЗ рдкреИрдХреЗрдЬ рдХреЛ рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧреАред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдбреНрд░рд╛рдЗрд╡рд░ рд╣рдореЗрд╢рд╛ NULL рдФрд░ рдЕрд╕рдлрд▓ рд░рд╣реЗрдЧрд╛ред