mirror of
https://github.com/django/django.git
synced 2024-12-23 17:46:27 +00:00
a0047c6242
Using `BaseCommand.options_list` makes Django use the legacy optparse
parser, which does not set the verbosity attribute correctly. Now the
verbosity argument is always cast to int. Regression in 8568638
(#19973).
Initial report and patch from blueyed.
21 lines
668 B
Python
21 lines
668 B
Python
from optparse import make_option
|
|
|
|
from django.core.management.base import BaseCommand
|
|
|
|
|
|
class Command(BaseCommand):
|
|
help = "Test optparse compatibility."
|
|
args = ''
|
|
|
|
option_list = BaseCommand.option_list + (
|
|
make_option("-s", "--style", default="Rock'n'Roll"),
|
|
make_option("-x", "--example")
|
|
)
|
|
|
|
def handle(self, *args, **options):
|
|
options["example"]
|
|
# BaseCommand default option is available
|
|
options['verbosity']
|
|
assert isinstance(options['verbosity'], int), "verbosity option is not int, but %s" % type(options['verbosity'])
|
|
self.stdout.write("All right, let's dance %s." % options["style"])
|