Как отобразить данные в несколько строк в одной ячейке, используя экспорт Excel в Laravel - PullRequest
2 голосов
/ 18 июня 2019

У меня есть таблица nayjest, и я хочу экспортировать данные из этой таблицы в файл Excel.

Но у меня возникают проблемы с форматированием данных в их ячейках.

НапримерЯ хочу экспортировать эти данные в таблицу nayjest laravel как есть в файле Excel,

Imgur

Но после экспорта это то, что отображается в файле Excel,

Imgur

Как видите, данные, которые должны были быть в несколько строк, теперь находятся в одной строке.

Это код, который у меня есть на данный момент,Я использую ExcelExport для экспорта данных в файл,

$cfg = (new GridConfig())
...
(new FieldConfig)
    ->setName('S_CODE')
    ->setLabel('Course Code')
    ->setCallback(function ($val, $row) {
        $stud_results = StudResult::where('SESSI', $sessi)
          ->where('SEMESTER', $semester)
          ->where('MATRIC_NO', $data->MATRIC_NO)
          ->get();
        global $currentStudResults;
                        $currentStudResults = $stud_results;
        $table = '<table>';
        foreach ($currentStudResults as $stud_result) {
          $table .= '<tr><td>'
          $table .= $stud_result->S_CODE;
          $table .= '</td></tr>';
          }

        $table = '</table>'
        return $table;
        })
,
...
->setComponents([
     (new THead)
         ->setComponents([
            (new OneCellRow)
                ->setRenderSection(RenderableRegistry::SECTION_END)
                ->setComponents([
                    new RecordsPerPage,
                    new ColumnsHider,
                    (new ExcelExport)
                        ->setFileName(strtoupper('Student Course History') . ' - ' . date('Y-m-d')),
                    (new HtmlTag)
                        ->setContent('<span class="glyphicon glyphicon-refresh"></span> Filter')
                        ->setTagName('button')
                        ->setRenderSection(RenderableRegistry::SECTION_END)
                        ->setAttributes([
                            'class' => 'btn btn-success btn-sm',
                         ]),
                  ]),
            (new ColumnHeadersRow),
            (new FiltersRow),
          ]),
       (new TFoot),
]);

Это ожидаемый результат в файле Excel,

Imgur

Есть лилюбой способ переформатировать файл Excel, чтобы следовать моим выводам?

1 Ответ

0 голосов
/ 18 июня 2019

Я думаю, что вы можете достичь этого, добавив некоторые линейные тормоза здесь:

 foreach ($currentStudResults as $stud_result) {
          $table .= '<tr><td>'
          $table .= $stud_result->S_CODE.'</br>';
          $table .= '</td></tr>';
          }
...