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

Autodetect ForeignKeys and add dependencies/split on circulars

This commit is contained in:
Andrew Godwin
2013-06-22 17:15:51 +01:00
parent 48493cff73
commit e2d7e83256
3 changed files with 164 additions and 11 deletions

View File

@@ -70,7 +70,7 @@ class ModelState(object):
"""
# Deconstruct the fields
fields = []
for field in model._meta.local_fields:
for field in model._meta.fields:
name, path, args, kwargs = field.deconstruct()
field_class = import_by_path(path)
fields.append((name, field_class(*args, **kwargs)))
@@ -83,12 +83,15 @@ class ModelState(object):
if name in model._meta.original_attrs:
options[name] = model._meta.original_attrs[name]
# Make our record
bases = tuple(model for model in model.__bases__ if (not hasattr(model, "_meta") or not model._meta.abstract))
if not bases:
bases = (models.Model, )
return cls(
model._meta.app_label,
model._meta.object_name,
fields,
options,
model.__bases__,
bases,
)
def clone(self):