Handle Apps with South migrations as unmigrated apps.
This commit is contained in:
parent
975415a8ce
commit
ed8919cbcb
|
@ -81,20 +81,25 @@ class MigrationLoader(object):
|
||||||
if import_name[0] not in "_.~":
|
if import_name[0] not in "_.~":
|
||||||
migration_names.add(import_name)
|
migration_names.add(import_name)
|
||||||
# Load them
|
# Load them
|
||||||
|
south_style_migrations = False
|
||||||
for migration_name in migration_names:
|
for migration_name in migration_names:
|
||||||
try:
|
try:
|
||||||
migration_module = import_module("%s.%s" % (module_name, migration_name))
|
migration_module = import_module("%s.%s" % (module_name, migration_name))
|
||||||
except ImportError as e:
|
except ImportError as e:
|
||||||
# Ignore South import errors, as we're triggering them
|
# Ignore South import errors, as we're triggering them
|
||||||
if "south" in str(e).lower():
|
if "south" in str(e).lower():
|
||||||
continue
|
south_style_migrations = True
|
||||||
|
break
|
||||||
raise
|
raise
|
||||||
if not hasattr(migration_module, "Migration"):
|
if not hasattr(migration_module, "Migration"):
|
||||||
raise BadMigrationError("Migration %s in app %s has no Migration class" % (migration_name, app_label))
|
raise BadMigrationError("Migration %s in app %s has no Migration class" % (migration_name, app_label))
|
||||||
# Ignore South-style migrations
|
# Ignore South-style migrations
|
||||||
if hasattr(migration_module.Migration, "forwards"):
|
if hasattr(migration_module.Migration, "forwards"):
|
||||||
continue
|
south_style_migrations = True
|
||||||
|
break
|
||||||
self.disk_migrations[app_label, migration_name] = migration_module.Migration(migration_name, app_label)
|
self.disk_migrations[app_label, migration_name] = migration_module.Migration(migration_name, app_label)
|
||||||
|
if south_style_migrations:
|
||||||
|
self.unmigrated_apps.add(app_label)
|
||||||
|
|
||||||
def get_migration_by_prefix(self, app_label, name_prefix):
|
def get_migration_by_prefix(self, app_label, name_prefix):
|
||||||
"Returns the migration(s) which match the given app label and name _prefix_"
|
"Returns the migration(s) which match the given app label and name _prefix_"
|
||||||
|
|
Loading…
Reference in New Issue