diff --git a/django/forms/models.py b/django/forms/models.py
index 0039516..f440cf6 100644
--- a/django/forms/models.py
+++ b/django/forms/models.py
@@ -274,7 +274,7 @@ class BaseModelForm(BaseForm):
             field = f.name
             # Exclude fields that aren't on the form. The developer may be
             # adding these values to the model after form validation.
-            if field not in self.fields:
+            if self._meta.fields and field not in self._meta.fields:
                 exclude.append(f.name)
             # Exclude fields that failed form validation. There's no need for
             # the model fields to validate them as well.
