Created a constant for the migrations module name.

Mostly for consistency with MODELS_MODULE_NAME; it's unlikely to change.
This commit is contained in:
Aymeric Augustin 2013-12-27 15:36:19 +01:00
parent f00243f36d
commit 2504a50cc2
2 changed files with 9 additions and 3 deletions

View File

@ -9,6 +9,9 @@ from django.utils import six
from django.conf import settings from django.conf import settings
MIGRATIONS_MODULE_NAME = 'migrations'
class MigrationLoader(object): class MigrationLoader(object):
""" """
Loads migration files from disk, and their status from the database. Loads migration files from disk, and their status from the database.
@ -46,7 +49,8 @@ class MigrationLoader(object):
if app_label in settings.MIGRATION_MODULES: if app_label in settings.MIGRATION_MODULES:
return settings.MIGRATION_MODULES[app_label] return settings.MIGRATION_MODULES[app_label]
else: else:
return '%s.migrations' % apps.get_app_config(app_label).name app_package_name = apps.get_app_config(app_label).name
return '%s.%s' % (app_package_name, MIGRATIONS_MODULE_NAME)
def load_disk(self): def load_disk(self):
""" """
@ -64,7 +68,7 @@ class MigrationLoader(object):
except ImportError as e: except ImportError as e:
# I hate doing this, but I don't want to squash other import errors. # I hate doing this, but I don't want to squash other import errors.
# Might be better to try a directory check directly. # Might be better to try a directory check directly.
if "No module named" in str(e) and "migrations" in str(e): if "No module named" in str(e) and MIGRATIONS_MODULE_NAME in str(e):
self.unmigrated_apps.add(app_config.label) self.unmigrated_apps.add(app_config.label)
continue continue
raise raise

View File

@ -6,6 +6,8 @@ from django.apps import apps
from django.utils import datetime_safe from django.utils import datetime_safe
from django.utils.six.moves import input from django.utils.six.moves import input
from .loader import MIGRATIONS_MODULE_NAME
class MigrationQuestioner(object): class MigrationQuestioner(object):
""" """
@ -31,7 +33,7 @@ class MigrationQuestioner(object):
app_config = apps.get_app_config(app_label) app_config = apps.get_app_config(app_label)
except LookupError: # It's a fake app. except LookupError: # It's a fake app.
return self.defaults.get("ask_initial", False) return self.defaults.get("ask_initial", False)
migrations_import_path = "%s.migrations" % app_config.name migrations_import_path = "%s.%s" % (app_config.name, MIGRATIONS_MODULE_NAME)
try: try:
migrations_module = importlib.import_module(migrations_import_path) migrations_module = importlib.import_module(migrations_import_path)
except ImportError: except ImportError: