1- from  ..forms  import  MultipleEmbeddedModelFormField 
1+ from  ..forms  import  EmbeddedModelArrayFormField 
22from  . import  EmbeddedModelField 
33from  .array  import  ArrayField 
44
55
6- class  MultipleEmbeddedModelField (ArrayField ):
6+ class  EmbeddedModelArrayField (ArrayField ):
77    def  __init__ (self , model , ** kwargs ):
88        super ().__init__ (EmbeddedModelField (model ), ** kwargs )
99
1010    def  deconstruct (self ):
1111        name , path , args , kwargs  =  super ().deconstruct ()
12-         if  (
13-             path 
14-             ==  "django_mongodb_backend.fields.multiple_embedded_model.MultipleEmbeddedModelField" 
15-         ):
16-             path  =  "django_mongodb_backend.fields.MultipleEmbeddedModelField" 
12+         if  path  ==  "django_mongodb_backend.fields.multiple_embedded_model.EmbeddedModelArrayField" :
13+             path  =  "django_mongodb_backend.fields.EmbeddedModelArrayField" 
1714        kwargs .update (
1815            {
1916                "model" : self .base_field .embedded_model ,
@@ -23,10 +20,15 @@ def deconstruct(self):
2320        del  kwargs ["base_field" ]
2421        return  name , path , args , kwargs 
2522
23+     def  get_db_prep_value (self , value , connection , prepared = False ):
24+         if  isinstance (value , list  |  tuple ):
25+             return  [self .base_field .get_db_prep_save (i , connection ) for  i  in  value ]
26+         return  value 
27+ 
2628    def  formfield (self , ** kwargs ):
2729        return  super ().formfield (
2830            ** {
29-                 "form_class" : MultipleEmbeddedModelFormField ,
31+                 "form_class" : EmbeddedModelArrayFormField ,
3032                "model" : self .base_field .embedded_model ,
3133                "max_length" : self .size ,
3234                "prefix" : self .name ,
0 commit comments