From 29be35ab250093de7afecd38a6120975cc7793ab Mon Sep 17 00:00:00 2001 From: Jan Metzger Date: Thu, 15 Jan 2026 12:18:28 +0100 Subject: [PATCH] Fix rendering of field values in ExcelDataFormatter by using ViewLayerData --- code/ExcelDataFormatter.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/code/ExcelDataFormatter.php b/code/ExcelDataFormatter.php index fa1abc1..5f19263 100644 --- a/code/ExcelDataFormatter.php +++ b/code/ExcelDataFormatter.php @@ -17,7 +17,7 @@ use SilverStripe\Model\List\ArrayList; use SilverStripe\View\TemplateEngine; - +use SilverStripe\View\ViewLayerData; use SilverStripe\Model\List\SS_List; use Override; use PhpOffice\PhpSpreadsheet\Cell\Coordinate; @@ -275,8 +275,7 @@ protected function addRow( if ($item->hasField($field) || $item->hasMethod('get' . $field)) { $value = $item->$field; } else { - $viewer = singleton(TemplateEngine::class)->renderString('$' . $field . '.RAW'); - $value = $item->renderWith($viewer, true); + $value = singleton(TemplateEngine::class)->renderString('$' . $field . '.RAW', new ViewLayerData($item)); } $sheet->setCellValue([$col, $row], $value);