diff --git a/dash/dash.py b/dash/dash.py index d00a4bf2a5..6d5ef61e51 100644 --- a/dash/dash.py +++ b/dash/dash.py @@ -2281,17 +2281,21 @@ def update(pathname_, search_, **states): # Set validation_layout if not self.config.suppress_callback_exceptions: - self.validation_layout = html.Div( - [ - page["layout"]() if callable(page["layout"]) else page["layout"] - for page in _pages.PAGE_REGISTRY.values() - ] - + [ + layout = self.layout + if not isinstance(layout, list): + layout = [ # pylint: disable=not-callable self.layout() if callable(self.layout) else self.layout ] + + self.validation_layout = html.Div( + [ + page["layout"]() if callable(page["layout"]) else page["layout"] + for page in _pages.PAGE_REGISTRY.values() + ] + + layout ) if _ID_CONTENT not in self.validation_layout: raise Exception("`dash.page_container` not found in the layout")