Guest User

Untitled

a guest
Aug 9th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.96 KB | None | 0 0
  1. from django.core.management.base import BaseCommand, CommandError
  2. from django.contrib.auth.models import User
  3.  
  4.  
  5. class Command(BaseCommand):
  6. help = 'Create a super user'
  7.  
  8. def handle(self, *args, **options):
  9.  
  10. if len(args) != 2:
  11. raise CommandError('need exactly two arguments for username and password')
  12. username, password = args
  13.  
  14. u, created = User.objects.get_or_create(username=username)
  15. if created:
  16. u.is_superuser = True
  17. u.is_staff = True
  18. u.set_password(password)
  19. u.save()
  20. else:
  21. raise CommandError("user '%s' already exist" % username)
  22.  
  23. return "Password changed successfully for user '%s'" % u.username
  24.  
  25. usage: manage.py createmysuperuser [-h] [--version] [-v {0,1,2,3}]
  26. [--settings SETTINGS]
  27. [--pythonpath PYTHONPATH] [--traceback]
  28. [--no-color]
  29. manage.py createmysuperuser: error: unrecognized arguments: myuser mypassword
  30.  
  31. class Command(BaseCommand):
  32. ...
  33. def add_arguments(self, parser):
  34. parser.add_argument('username')
  35. parser.add_argument('password')
  36.  
  37. def handle(self, *args, **options):
  38. username = options['username']
  39. password = options['password']
  40. ...
  41.  
  42. class Command(BaseCommand):
  43.  
  44. def add_arguments(self, parser):
  45. parser.add_argument('args')
  46.  
  47. def handle(self, *args, **options):
  48. if len(args) != 2:
  49. ...
  50.  
  51. from django.core.management.base import BaseCommand
  52.  
  53. class Command(BaseCommand):
  54.  
  55. def add_arguments(self, parser):
  56. parser.add_argument('username')
  57. parser.add_argument('password')
  58.  
  59. def handle(self, *args, **options):
  60. username = options['username']
  61. password = options['password']
  62. return u'Username: %s Password: %s' % (username, password)
  63.  
  64. def add_arguments(self, parser):
  65. parser.add_argument('args', nargs='*')
Add Comment
Please, Sign In to add comment