3

2 つのテーブルの要約レポートを作成したいと考えています。1 つは employees テーブルで、もう 1 つは sims テーブルです。これらのテーブルには、1 対多の関係があります。を使用してモデルのデータをエクスポートできることは知っていますが ->fromModel($model) 、2 つのテーブルに基づいてレポートを生成する方法はありますか?

4

1 に答える 1

13

だから、私が質問したところ、答えられなかったが臆病に-1を与えられた人. ただし、これを手動で行う方法を考え出しました。コードを投稿して、私のような将来の初心者に役立つようにします。

public function downloadSummary(){

        Excel::create('records', function($excel) {

            $excel->sheet('Sheet1', function($sheet) {
                $employees = Employee::all();

                $arr =array();
                foreach($employees as $employee) {
                    foreach($employee->sims as $sim){
                        $data =  array($employee->id, $employee->name, $employee->nic, $employee->address, $employee->title,
                            $sim->id, $sim->msisdn, $sim->imei, $sim->issued_to);
                        array_push($arr, $data);
                    }
                }

                //set the titles
                $sheet->fromArray($arr,null,'A1',false,false)->prependRow(array(
                        'Employee Id', 'Employee Name', 'Employee NIC', 'Employee Address', 'Employee Title',
                        'Sim Id', 'Sim MSISDN', 'IMEI', 'Issued To'
                    )

                );

            });

        })->export('xls');
    }
于 2015-11-02T21:16:09.877 に答える