summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorMariusz Felisiak <felisiak.mariusz@gmail.com>2021-10-12 06:21:14 +0200
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2021-10-12 07:41:51 +0200
commit224fa0bc7de05f3f269e7fd41b66154b82a2e87f (patch)
treecf7d757d1ee6cd39e180afceb712a3249436c22a /django
parent44d11e5b2c6d61916ff5d7e9549f6c6911f5044d (diff)
[4.0.x] Refs #29628, Refs #33178 -- Made createsuperuser validate password against required fields passed in options.
Backport of da266b3c5ca4bb7581d7a3cc51bc820e78cf64f0 from main
Diffstat (limited to 'django')
-rw-r--r--django/contrib/auth/management/commands/createsuperuser.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/django/contrib/auth/management/commands/createsuperuser.py b/django/contrib/auth/management/commands/createsuperuser.py
index 61b4061252..6ab0e5a3b9 100644
--- a/django/contrib/auth/management/commands/createsuperuser.py
+++ b/django/contrib/auth/management/commands/createsuperuser.py
@@ -134,13 +134,13 @@ class Command(BaseCommand):
self.stderr.write('Error: This field cannot be blank.')
continue
user_data[field_name] = [pk.strip() for pk in input_value.split(',')]
- if not field.many_to_many:
- fake_user_data[field_name] = input_value
-
# Wrap any foreign keys in fake model instances
if field.many_to_one:
fake_user_data[field_name] = field.remote_field.model(input_value)
+ if not field.many_to_many and field_name not in fake_user_data:
+ fake_user_data[field_name] = user_data[field_name]
+
# Prompt for a password if the model has one.
while PASSWORD_FIELD in user_data and user_data[PASSWORD_FIELD] is None:
password = getpass.getpass()