@@ -666,7 +666,6 @@ class BaseDocumentFormSet(BaseFormSet):
666
666
667
667
def __init__ (self , data = None , files = None , auto_id = 'id_%s' , prefix = None ,
668
668
queryset = [], ** kwargs ):
669
-
670
669
if not isinstance (queryset , (list , BaseQuerySet )):
671
670
queryset = [queryset ]
672
671
self .queryset = queryset
@@ -842,6 +841,7 @@ class EmbeddedDocumentFormSet(BaseDocumentFormSet):
842
841
843
842
def __init__ (self , data = None , files = None , save_as_new = False ,
844
843
prefix = None , queryset = [], parent_document = None , ** kwargs ):
844
+
845
845
if parent_document is not None :
846
846
self .parent_document = parent_document
847
847
@@ -850,8 +850,11 @@ def __init__(self, data=None, files=None, save_as_new=False,
850
850
if parent_document is None :
851
851
self .parent_document = instance
852
852
853
- queryset = getattr (self .parent_document ,
854
- self .form ._meta .embedded_field )
853
+ queryset = getattr (self .parent_document , self .form ._meta .embedded_field )
854
+ if not isinstance (queryset , list ) and queryset is None :
855
+ queryset = []
856
+ elif not isinstance (queryset , list ):
857
+ queryset = [queryset , ]
855
858
856
859
super (EmbeddedDocumentFormSet , self ).__init__ (data , files , save_as_new ,
857
860
prefix , queryset ,
@@ -968,8 +971,7 @@ def embeddedformset_factory(document, parent_document,
968
971
You must provide ``fk_name`` if ``model`` has more than one ``ForeignKey``
969
972
to ``parent_model``.
970
973
"""
971
- emb_field = _get_embedded_field (
972
- parent_document , document , emb_name = embedded_name )
974
+ emb_field = _get_embedded_field (parent_document , document , emb_name = embedded_name )
973
975
if isinstance (emb_field , EmbeddedDocumentField ):
974
976
max_num = 1
975
977
kwargs = {
0 commit comments