@@ -368,7 +368,7 @@ def _compile_form_errors(self, errors, index, prefix=None):
368368 error_messages .append (f"Record { index } { prefix } { field_name } : { err } " )
369369 return error_messages
370370
371- def _save_object (self , model_form , request ):
371+ def _save_object (self , model_form , request , parent_idx ):
372372 _action = 'Updated' if model_form .instance .pk else 'Created'
373373
374374 # Save the primary object
@@ -396,7 +396,7 @@ def _save_object(self, model_form, request):
396396 else :
397397 # Replicate errors on the related object form to the import form for display and abort
398398 raise ValidationError (
399- self ._compile_form_errors (f .errors , index = i , prefix = f'{ field_name } [{ i } ]' )
399+ self ._compile_form_errors (f .errors , index = parent_idx , prefix = f'{ field_name } [{ i } ]' )
400400 )
401401
402402 # Enforce object-level permissions on related objects
@@ -481,7 +481,7 @@ def create_and_update_objects(self, form, request):
481481 restrict_form_fields (model_form , request .user )
482482
483483 if model_form .is_valid ():
484- obj = self ._save_object (model_form , request )
484+ obj = self ._save_object (model_form , request , i )
485485 saved_objects .append (obj )
486486 else :
487487 # Raise model form errors
0 commit comments