2
0
mirror of https://github.com/inventree/InvenTree.git synced 2026-04-28 13:54:25 +00:00

Fix for category template creation (#11803)

- Prevent duplicate parameters
- Closes https://github.com/inventree/InvenTree/issues/11798

Co-authored-by: Copilot <copilot@github.com>
This commit is contained in:
Oliver
2026-04-26 09:32:46 +10:00
committed by GitHub
parent e684e002f7
commit 75942fbedf
+8 -2
View File
@@ -2478,6 +2478,7 @@ class Part(
category__in=categories category__in=categories
).order_by('-category__level') ).order_by('-category__level')
template_ids = set()
parameters = [] parameters = []
content_type = ContentType.objects.get_for_model(Part) content_type = ContentType.objects.get_for_model(Part)
@@ -2488,6 +2489,12 @@ class Part(
).exists(): ).exists():
continue continue
# Ensure we do not create duplicate parameters if multiple categories have the same template
if category_template.template.pk in template_ids:
continue
template_ids.add(category_template.template.pk)
parameters.append( parameters.append(
Parameter( Parameter(
template=category_template.template, template=category_template.template,
@@ -2497,8 +2504,7 @@ class Part(
) )
) )
if len(parameters) > 0: Parameter.objects.bulk_create(parameters)
Parameter.objects.bulk_create(parameters)
def getTestTemplates( def getTestTemplates(
self, required=None, include_parent: bool = True, enabled=None self, required=None, include_parent: bool = True, enabled=None