[1.7.x] Fixed #22577: Python 3 broke on non-module migrations directory
This commit is contained in:
parent
aa10f57d94
commit
7f0c207d1b
|
@ -158,6 +158,12 @@ class MigrationWriter(object):
|
||||||
# See if we can import the migrations module directly
|
# See if we can import the migrations module directly
|
||||||
try:
|
try:
|
||||||
migrations_module = import_module(migrations_package_name)
|
migrations_module = import_module(migrations_package_name)
|
||||||
|
|
||||||
|
# Python 3 fails when the migrations directory does not have a
|
||||||
|
# __init__.py file
|
||||||
|
if not hasattr(migrations_module, '__file__'):
|
||||||
|
raise ImportError
|
||||||
|
|
||||||
basedir = os.path.dirname(migrations_module.__file__)
|
basedir = os.path.dirname(migrations_module.__file__)
|
||||||
except ImportError:
|
except ImportError:
|
||||||
app_config = apps.get_app_config(self.migration.app_label)
|
app_config = apps.get_app_config(self.migration.app_label)
|
||||||
|
|
|
@ -215,6 +215,7 @@ class WriterTests(TestCase):
|
||||||
test_apps = [
|
test_apps = [
|
||||||
'migrations.migrations_test_apps.normal',
|
'migrations.migrations_test_apps.normal',
|
||||||
'migrations.migrations_test_apps.with_package_model',
|
'migrations.migrations_test_apps.with_package_model',
|
||||||
|
'migrations.migrations_test_apps.without_init_file',
|
||||||
]
|
]
|
||||||
|
|
||||||
base_dir = os.path.dirname(os.path.dirname(__file__))
|
base_dir = os.path.dirname(os.path.dirname(__file__))
|
||||||
|
|
Loading…
Reference in New Issue