diff --git a/CHANGELOG.md b/CHANGELOG.md index c9f72b469..ec47315d6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -110,3 +110,5 @@ Master branch ============= - [translation] in french, replace "Modifier" by "Enregistrer" in the edit form +- [chill entity render] fix error when fallback to default entity render (usage of __toString()) + diff --git a/Templating/Entity/ChillEntityRender.php b/Templating/Entity/ChillEntityRender.php index fec14a594..8f8f58263 100644 --- a/Templating/Entity/ChillEntityRender.php +++ b/Templating/Entity/ChillEntityRender.php @@ -33,7 +33,7 @@ class ChillEntityRender extends AbstractChillEntityRender public function renderString($entity, array $options): string { - return $entity; + return (string) $entity; } public function supports($entity, array $options): bool diff --git a/Templating/Entity/ChillEntityRenderExtension.php b/Templating/Entity/ChillEntityRenderExtension.php index 98cb90ee5..23a90240f 100644 --- a/Templating/Entity/ChillEntityRenderExtension.php +++ b/Templating/Entity/ChillEntityRenderExtension.php @@ -41,6 +41,11 @@ class ChillEntityRenderExtension extends AbstractExtension */ protected $defaultRender; + public function __construct() + { + $this->defaultRender = new ChillEntityRender(); + } + public function getFilters() { return [ @@ -55,12 +60,20 @@ class ChillEntityRenderExtension extends AbstractExtension public function renderString($entity, array $options = []): string { + if (NULL === $entity) { + return ''; + } + return $this->getRender($entity, $options) ->renderString($entity, $options); } public function renderBox($entity, array $options = []): string { + if (NULL === $entity) { + return ''; + } + return $this->getRender($entity, $options) ->renderBox($entity, $options); }