1
0
mirror of https://github.com/django/django.git synced 2025-10-24 06:06:09 +00:00

Refs #26521 -- Adjusted CreateModel bases validation to account for mixins.

Thanks Collin for the report.
This commit is contained in:
Simon Charette
2016-04-28 18:20:48 -04:00
parent ce32c3e2cc
commit f951bb78cb
2 changed files with 23 additions and 6 deletions

View File

@@ -56,12 +56,11 @@ class CreateModel(ModelOperation):
# Sanity-check that there are no duplicated field names, bases, or
# manager names
_check_for_duplicates('fields', (name for name, _ in self.fields))
_check_for_duplicates(
'bases',
(base._meta.label_lower if isinstance(base, models.base.ModelBase) else base.lower()
for base in self.bases
if base is not models.Model)
)
_check_for_duplicates('bases', (
base._meta.label_lower if hasattr(base, '_meta') else
base.lower() if isinstance(base, six.string_types) else base
for base in self.bases
))
_check_for_duplicates('managers', (name for name, _ in self.managers))
def deconstruct(self):