mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	[2.1.x] Fixed #29469 -- Added a helpful makemigrations error if app_label contains dots.
Backport of 78972af367 from master
			
			
This commit is contained in:
		| @@ -73,6 +73,14 @@ class Command(BaseCommand): | ||||
|                 bad_app_labels.add(app_label) | ||||
|         if bad_app_labels: | ||||
|             for app_label in bad_app_labels: | ||||
|                 if '.' in app_label: | ||||
|                     self.stderr.write( | ||||
|                         "'%s' is not a valid app label. Did you mean '%s'?" % ( | ||||
|                             app_label, | ||||
|                             app_label.split('.')[-1], | ||||
|                         ) | ||||
|                     ) | ||||
|                 else: | ||||
|                     self.stderr.write("App '%s' could not be found. Is it in INSTALLED_APPS?" % app_label) | ||||
|             sys.exit(2) | ||||
|  | ||||
|   | ||||
| @@ -786,6 +786,12 @@ class MakeMigrationsTests(MigrationTestBase): | ||||
|             call_command("makemigrations", "this_app_does_not_exist", stderr=err) | ||||
|         self.assertIn("'this_app_does_not_exist' could not be found.", err.getvalue()) | ||||
|  | ||||
|     def test_makemigrations_app_name_with_dots(self): | ||||
|         err = io.StringIO() | ||||
|         with self.assertRaises(SystemExit): | ||||
|             call_command('makemigrations', 'invalid.app.label', stderr=err) | ||||
|         self.assertIn("'invalid.app.label' is not a valid app label. Did you mean 'label'?", err.getvalue()) | ||||
|  | ||||
|     def test_makemigrations_empty_no_app_specified(self): | ||||
|         """ | ||||
|         makemigrations exits if no app is specified with 'empty' mode. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user