Changeset 1474
- Timestamp:
- 11/27/05 20:57:38 (2 years ago)
- Files:
-
- django/trunk/django/bin/django-admin.py (modified) (1 diff)
- django/trunk/django/core/management.py (modified) (4 diffs)
- django/trunk/docs/django-admin.txt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/bin/django-admin.py
r1185 r1474 81 81 translation.activate('en-us') 82 82 83 if action in ('createsuperuser', 'init', 'validate'): 83 if action == 'createsuperuser': 84 try: 85 username, email, password = args[1], args[2], args[3] 86 except IndexError: 87 sys.stderr.write("Error: %r requires arguments of 'username email password' or no argument at all.\n") 88 sys.exit(1) 89 ACTION_MAPPING[action](username, email, password) 90 elif action in ('init', 'validate'): 84 91 ACTION_MAPPING[action]() 85 92 elif action == 'inspectdb': django/trunk/django/core/management.py
r1434 r1474 482 482 startapp.args = "[appname]" 483 483 484 def createsuperuser( ):484 def createsuperuser(username=None, email=None, password=None): 485 485 "Creates a superuser account." 486 486 from django.core import validators … … 489 489 try: 490 490 while 1: 491 username = raw_input('Username (only letters, digits and underscores): ') 491 if not username: 492 username = raw_input('Username (only letters, digits and underscores): ') 492 493 if not username.isalnum(): 493 494 sys.stderr.write("Error: That username is invalid.\n") 494 continue495 username = None 495 496 try: 496 497 users.get_object(username__exact=username) … … 499 500 else: 500 501 sys.stderr.write("Error: That username is already taken.\n") 502 username = None 501 503 while 1: 502 email = raw_input('E-mail address: ') 504 if not email: 505 email = raw_input('E-mail address: ') 503 506 try: 504 507 validators.isValidEmail(email, None) 505 508 except validators.ValidationError: 506 509 sys.stderr.write("Error: That e-mail address is invalid.\n") 510 email = None 507 511 else: 508 512 break 509 513 while 1: 510 password = getpass.getpass() 511 password2 = getpass.getpass('Password (again): ') 512 if password != password2: 513 sys.stderr.write("Error: Your passwords didn't match.\n") 514 continue 514 if not password: 515 password = getpass.getpass() 516 password2 = getpass.getpass('Password (again): ') 517 if password != password2: 518 sys.stderr.write("Error: Your passwords didn't match.\n") 519 password = None 520 continue 515 521 if password.strip() == '': 516 522 sys.stderr.write("Error: Blank passwords aren't allowed.\n") 523 password = None 517 524 continue 518 525 break … … 526 533 u.save() 527 534 print "User created successfully." 528 createsuperuser.args = ' '535 createsuperuser.args = '[username] [email] [password] (Either all or none)' 529 536 530 537 def inspectdb(db_name): django/trunk/docs/django-admin.txt
r1107 r1474 55 55 address and password. 56 56 57 **New in Django development version:** You can specify 58 ``username email password`` on the command line, for convenient use in shell 59 scripts. Example:: 60 61 django-admin.py createsuperuser john john@example.com mypassword 62 57 63 init 58 64 ----
