diff --git a/crispy_forms/layout.py b/crispy_forms/layout.py
index <HASH>..<HASH> 100644
--- a/crispy_forms/layout.py
+++ b/crispy_forms/layout.py
@@ -373,7 +373,6 @@ class MultiField(LayoutObject):
         # We need to render fields using django-uni-form render_field so that MultiField can
         # hold other Layout objects inside itself
         fields_output = u''
-        self.bound_fields = []
         for field in self.fields:
             fields_output += render_field(field, form, form_style, context, 'uni_form/multifield.html', self.label_class, layout_object=self)
 
diff --git a/crispy_forms/utils.py b/crispy_forms/utils.py
index <HASH>..<HASH> 100644
--- a/crispy_forms/utils.py
+++ b/crispy_forms/utils.py
@@ -105,7 +105,10 @@ def render_field(field, form, form_style, context, template=None, labelclass=Non
 
         # We save the Layout object's bound fields in the layout object's `bound_fields` list
         if layout_object is not None:
-            layout_object.bound_fields.append(bound_field)
+            if hasattr(layout_object, 'bound_fields') and isinstance(layout_object.bound_fields, list):
+                layout_object.bound_fields.append(bound_field)
+            else:
+                layout_object.bound_fields = [bound_field]
 
         context.update({
             'field': bound_field,
Redoing bound_fields to be self contained