Laravel-excel: Ошибка сСриализации закрытия: сСриализация Illuminate \ Http \ UploadedFile Π½Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π°

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 13 июн. 2017  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: Maatwebsite/Laravel-Excel

[Π’ΠžΠŸΠ ΠžΠ‘]

maatwebsite / excel 2.1, Laravel 5.4

ΠŸΡ€ΠΈΠ²Π΅Ρ‚ рСбята. Π― ΠΏΡ‹Ρ‚Π°ΡŽΡΡŒ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Excel, Π½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽ сообщСниС ΠΎΠ± ошибкС: «БСриализация закрытия Π½Π΅ ΡƒΠ΄Π°Π»Π°ΡΡŒ: сСриализация 'Illuminate \ Http \ UploadedFile' Π½Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Π°Β». Π― ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» ΡƒΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ Π½Π΅ΠΏΠΎΠ»Π°Π΄ΠΊΠΈ, Π½ΠΎ Π½Π΅ понимаю, ΠΏΠΎΡ‡Π΅ΠΌΡƒ эта ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° всС Π΅Ρ‰Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚. Π­Ρ‚ΠΎ исходный ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² Excel.

if($request->hasFile('file')){
     $file = $request->file('file')->getRealPath();
     \Excel::filter('chunk')->load($file)->chunk(200, function($result) use ($request){
        foreach ($result as $item) {
           if(collect($item)->has('title') && collect($item)->has('category_id')  && collect($item)->has('file')){
                Content::create([
                     'title' => $item->title,
                     'category_id' => $item->category_id,
                     'file' => $item->file,
                     'reference' => $request->input('reference')
                ]);
           }
        }
       });
      return redirect()->back();
}

ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΠΏΠΎΠΌΠΎΠ³ΠΈΡ‚Π΅ ΠΌΠ½Π΅ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ.

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ $request Π² Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΎ сСриализуСтся ΠΈ ставится Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ явныС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅.

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ это:

if($request->hasFile('file')){
     $file = $request->file('file')->getRealPath();
    $reference = $request->input('reference');
     \Excel::filter('chunk')->load($file)->chunk(200, function($result) use ($reference){
        foreach ($result as $item) {
           if(collect($item)->has('title') && collect($item)->has('category_id')  && collect($item)->has('file')){
                Content::create([
                     'title' => $item->title,
                     'category_id' => $item->category_id,
                     'file' => $item->file,
                     'reference' => $reference
                ]);
           }
        }
       });
      return redirect()->back();
}

ВсС 3 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ $request Π² Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΎ сСриализуСтся ΠΈ ставится Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ явныС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅.

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ это:

if($request->hasFile('file')){
     $file = $request->file('file')->getRealPath();
    $reference = $request->input('reference');
     \Excel::filter('chunk')->load($file)->chunk(200, function($result) use ($reference){
        foreach ($result as $item) {
           if(collect($item)->has('title') && collect($item)->has('category_id')  && collect($item)->has('file')){
                Content::create([
                     'title' => $item->title,
                     'category_id' => $item->category_id,
                     'file' => $item->file,
                     'reference' => $reference
                ]);
           }
        }
       });
      return redirect()->back();
}

Бпасибо @patrickbrouwers. Π­Ρ‚ΠΎ спасло ΠΌΠ½Π΅ Тизнь: +1:.

Бпасибо @patrickbrouwers.

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ