mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	Fixed #19257 -- Don't swallow command's KeyError in call_command
Thanks Giovanni Bajo for the report.
This commit is contained in:
		| @@ -136,14 +136,15 @@ def call_command(name, *args, **options): | |||||||
|     # Load the command object. |     # Load the command object. | ||||||
|     try: |     try: | ||||||
|         app_name = get_commands()[name] |         app_name = get_commands()[name] | ||||||
|         if isinstance(app_name, BaseCommand): |  | ||||||
|             # If the command is already loaded, use it directly. |  | ||||||
|             klass = app_name |  | ||||||
|         else: |  | ||||||
|             klass = load_command_class(app_name, name) |  | ||||||
|     except KeyError: |     except KeyError: | ||||||
|         raise CommandError("Unknown command: %r" % name) |         raise CommandError("Unknown command: %r" % name) | ||||||
|  |  | ||||||
|  |     if isinstance(app_name, BaseCommand): | ||||||
|  |         # If the command is already loaded, use it directly. | ||||||
|  |         klass = app_name | ||||||
|  |     else: | ||||||
|  |         klass = load_command_class(app_name, name) | ||||||
|  |  | ||||||
|     # Grab out a list of defaults from the options. optparse does this for us |     # Grab out a list of defaults from the options. optparse does this for us | ||||||
|     # when the script runs from the command line, but since call_command can |     # when the script runs from the command line, but since call_command can | ||||||
|     # be called programatically, we need to simulate the loading and handling |     # be called programatically, we need to simulate the loading and handling | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user