Миграция Laravel Maatwebsite Excel 2. * до 3.1 - PullRequest
0 голосов
/ 22 ноября 2018

Я хочу обратиться за помощью в отношении экспорта экспорта maatwebsite / excel из пакета 2. * в 3. .У меня много проблем, когда я хочу выполнить миграцию. Можете ли вы помочь мне разрешить мой код с версии 2. до 3. *?Спасибо.

Это мой контроллер для Excel maatwebsite v2.0:

public function exportPost(Request $request)
    {
        // validasi
        $this->validate($request, [
            'user_id'=>'required',
        ], [
            'user_id.required'=>'Anda belum memilih pemilik. Pilih minimal 1 pemilik umkm.'
        ]);

        $umkms = Umkm::whereIn('id', $request->get('user_id'))->get();
        Excel::create('Data UMKM Nearme', function($excel) use ($umkms) {
            // Set property
            $excel->setTitle('Data UMKM Nearme')->setCreator(Auth::user()->name);
            $excel->sheet('Data UMKM', function($sheet) use ($umkms) {
                $row = 1;
                $sheet->row($row, [
                    'Nama UMKM',
                    'Kategori',
                    'Alamat',
                    'Pemilik'
                ]);
                foreach ($umkms as $umkm) {
                    $sheet->row(++$row, [
                        $umkm->nama_umkm,
                        $umkm->kategoriumkm->nama,
                        $umkm->alamat,
                        $umkm->user->name
                    ]);
                }
            });
        })->export('xlsx');
}

Я пытался выполнить миграцию, но написанный код все еще статичен.Я хочу использовать динамический код в соответствии с запросом в форме.

Это моя миграция 3.0

КОНТРОЛЛЕР:

public function exportPost(Request $request)
{
    // validasi
    $this->validate($request, [
        'user_id'=>'required',
    ], [
        'user_id.required'=>'Anda belum memilih pemilik. Pilih minimal 1 pemilik umkm.'
    ]);
    return Excel::download(new UmkmsExport('2'), 'user.xlsx');
}

EXCORT EXCEL:

<?php

namespace App\Exports;

use App\Umkm;
use Maatwebsite\Excel\Concerns\FromQuery;
// use Illuminate\Http\Request;

class UmkmsExport implements FromQuery
{
                protected $user_id;
                public function __construct(string $user_id)
    {
        $this->user_id = $user_id;
    }
    /**
    * @return \Illuminate\Support\Query
    */
    public function query()
    {
        return Umkm::query()->where('id', $this->user_id)->get();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...