From 9f453009999922a4589c6289cd61866acf74afcb Mon Sep 17 00:00:00 2001 From: Rob Duffy Date: Tue, 26 Nov 2024 15:51:05 +0100 Subject: [PATCH] Fixes #17490: Config Template unable to dynamically include templates --- netbox/utilities/jinja2.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/netbox/utilities/jinja2.py b/netbox/utilities/jinja2.py index cefb97831..8286ae171 100644 --- a/netbox/utilities/jinja2.py +++ b/netbox/utilities/jinja2.py @@ -29,10 +29,16 @@ class DataFileLoader(BaseLoader): # Find and pre-fetch referenced templates if referenced_templates := find_referenced_templates(environment.parse(template_source)): - self.cache_templates({ - df.path: df.data_as_string for df in - DataFile.objects.filter(source=self.data_source, path__in=referenced_templates) - }) + if None in referenced_templates: + self.cache_templates({ + df.path: df.data_as_string for df in + DataFile.objects.filter(source=self.data_source) + }) + else: + self.cache_templates({ + df.path: df.data_as_string for df in + DataFile.objects.filter(source=self.data_source, path__in=referenced_templates) + }) return template_source, template, lambda: True