diff --git a/docs/howto/custom-management-commands.txt b/docs/howto/custom-management-commands.txt
index 5c13e47c11d..d47fecbd609 100644
--- a/docs/howto/custom-management-commands.txt
+++ b/docs/howto/custom-management-commands.txt
@@ -106,11 +106,13 @@ options can be added in the :meth:`~BaseCommand.add_arguments` method like this:
parser.add_argument('poll_id', nargs='+', type=int)
# Named (optional) arguments
- parser.add_argument('--delete',
+ parser.add_argument(
+ '--delete',
action='store_true',
dest='delete',
default=False,
- help='Delete poll instead of closing it')
+ help='Delete poll instead of closing it',
+ )
def handle(self, *args, **options):
# ...
diff --git a/docs/howto/error-reporting.txt b/docs/howto/error-reporting.txt
index 7a513385396..ee66bfb14f4 100644
--- a/docs/howto/error-reporting.txt
+++ b/docs/howto/error-reporting.txt
@@ -207,10 +207,12 @@ filtered out of error reports in a production environment (that is, where
@sensitive_post_parameters('pass_word', 'credit_card_number')
def record_user_profile(request):
- UserProfile.create(user=request.user,
- password=request.POST['pass_word'],
- credit_card=request.POST['credit_card_number'],
- name=request.POST['name'])
+ UserProfile.create(
+ user=request.user,
+ password=request.POST['pass_word'],
+ credit_card=request.POST['credit_card_number'],
+ name=request.POST['name'],
+ )
...
In the above example, the values for the ``pass_word`` and
diff --git a/docs/howto/static-files/deployment.txt b/docs/howto/static-files/deployment.txt
index da0427343e9..805e799eaac 100644
--- a/docs/howto/static-files/deployment.txt
+++ b/docs/howto/static-files/deployment.txt
@@ -104,9 +104,9 @@ Here's how this might look in a fabfile::
def deploy_static():
local('./manage.py collectstatic')
project.rsync_project(
- remote_dir = env.remote_static_root,
- local_dir = env.local_static_root,
- delete = True
+ remote_dir=env.remote_static_root,
+ local_dir=env.local_static_root,
+ delete=True,
)
.. _staticfiles-from-cdn:
diff --git a/docs/intro/tutorial05.txt b/docs/intro/tutorial05.txt
index 45fdb3746d8..bfb43358e65 100644
--- a/docs/intro/tutorial05.txt
+++ b/docs/intro/tutorial05.txt
@@ -462,8 +462,7 @@ class:
in the past, positive for questions that have yet to be published).
"""
time = timezone.now() + datetime.timedelta(days=days)
- return Question.objects.create(question_text=question_text,
- pub_date=time)
+ return Question.objects.create(question_text=question_text, pub_date=time)
class QuestionViewTests(TestCase):
@@ -495,8 +494,7 @@ class:
"""
create_question(question_text="Future question.", days=30)
response = self.client.get(reverse('polls:index'))
- self.assertContains(response, "No polls are available.",
- status_code=200)
+ self.assertContains(response, "No polls are available.")
self.assertQuerysetEqual(response.context['latest_question_list'], [])
def test_index_view_with_future_question_and_past_question(self):
@@ -580,10 +578,9 @@ in the future is not:
The detail view of a question with a pub_date in the future should
return a 404 not found.
"""
- future_question = create_question(question_text='Future question.',
- days=5)
- response = self.client.get(reverse('polls:detail',
- args=(future_question.id,)))
+ future_question = create_question(question_text='Future question.', days=5)
+ url = reverse('polls:detail', args=(future_question.id,))
+ response = self.client.get(url)
self.assertEqual(response.status_code, 404)
def test_detail_view_with_a_past_question(self):
@@ -591,13 +588,10 @@ in the future is not:
The detail view of a question with a pub_date in the past should
display the question's text.
"""
- past_question = create_question(question_text='Past Question.',
- days=-5)
- response = self.client.get(reverse('polls:detail',
- args=(past_question.id,)))
- self.assertContains(response, past_question.question_text,
- status_code=200)
-
+ past_question = create_question(question_text='Past Question.', days=-5)
+ url = reverse('polls:detail', args=(past_question.id,))
+ response = self.client.get(url)
+ self.assertContains(response, past_question.question_text)
Ideas for more tests
--------------------
diff --git a/docs/ref/contrib/admin/index.txt b/docs/ref/contrib/admin/index.txt
index 66b116ad356..d5afca2c88a 100644
--- a/docs/ref/contrib/admin/index.txt
+++ b/docs/ref/contrib/admin/index.txt
@@ -617,10 +617,12 @@ subclass::
color_code = models.CharField(max_length=6)
def colored_name(self):
- return format_html('{} {}',
- self.color_code,
- self.first_name,
- self.last_name)
+ return format_html(
+ '{} {}',
+ self.color_code,
+ self.first_name,
+ self.last_name,
+ )
class PersonAdmin(admin.ModelAdmin):
list_display = ('first_name', 'last_name', 'colored_name')
@@ -706,9 +708,11 @@ subclass::
color_code = models.CharField(max_length=6)
def colored_first_name(self):
- return format_html('{}',
- self.color_code,
- self.first_name)
+ return format_html(
+ '{}',
+ self.color_code,
+ self.first_name,
+ )
colored_first_name.admin_order_field = 'first_name'
@@ -912,13 +916,11 @@ subclass::
def lookups(self, request, model_admin):
if request.user.is_superuser:
- return super(AuthDecadeBornListFilter,
- self).lookups(request, model_admin)
+ return super(AuthDecadeBornListFilter, self).lookups(request, model_admin)
def queryset(self, request, queryset):
if request.user.is_superuser:
- return super(AuthDecadeBornListFilter,
- self).queryset(request, queryset)
+ return super(AuthDecadeBornListFilter, self).queryset(request, queryset)
Also as a convenience, the ``ModelAdmin`` object is passed to
the ``lookups`` method, for example if you want to base the
@@ -1274,8 +1276,8 @@ subclass::
class PersonAdmin(admin.ModelAdmin):
def view_on_site(self, obj):
- return 'https://example.com' + reverse('person-detail',
- kwargs={'slug': obj.slug})
+ url = reverse('person-detail', kwargs={'slug': obj.slug})
+ return 'https://example.com' + url
Custom template options
~~~~~~~~~~~~~~~~~~~~~~~
@@ -1885,8 +1887,9 @@ provided some extra mapping data that would not otherwise be available::
def change_view(self, request, object_id, form_url='', extra_context=None):
extra_context = extra_context or {}
extra_context['osm_data'] = self.get_osm_info()
- return super(MyModelAdmin, self).change_view(request, object_id,
- form_url, extra_context=extra_context)
+ return super(MyModelAdmin, self).change_view(
+ request, object_id, form_url, extra_context=extra_context,
+ )
These views return :class:`~django.template.response.TemplateResponse`
instances which allow you to easily customize the response data before
diff --git a/docs/ref/contrib/gis/db-api.txt b/docs/ref/contrib/gis/db-api.txt
index 4403fff3924..0b1f7d3d0bc 100644
--- a/docs/ref/contrib/gis/db-api.txt
+++ b/docs/ref/contrib/gis/db-api.txt
@@ -122,7 +122,7 @@ raster models::
>>> from django.contrib.gis.gdal import GDALRaster
>>> rast = GDALRaster({'width': 10, 'height': 10, 'name': 'Canyon', 'srid': 4326,
- ... 'scale': [0.1, -0.1]'bands': [{"data": range(100)}]}
+ ... 'scale': [0.1, -0.1], 'bands': [{"data": range(100)}]})
>>> dem = Elevation(name='Canyon', rast=rast)
>>> dem.save()
@@ -131,7 +131,7 @@ Note that this equivalent to::
>>> dem = Elevation.objects.create(
... name='Canyon',
... rast={'width': 10, 'height': 10, 'name': 'Canyon', 'srid': 4326,
- ... 'scale': [0.1, -0.1]'bands': [{"data": range(100)}]}
+ ... 'scale': [0.1, -0.1], 'bands': [{"data": range(100)}]},
... )
.. _spatial-lookups-intro:
diff --git a/docs/ref/contrib/gis/tutorial.txt b/docs/ref/contrib/gis/tutorial.txt
index 8f597df9fb3..5d753a327e1 100644
--- a/docs/ref/contrib/gis/tutorial.txt
+++ b/docs/ref/contrib/gis/tutorial.txt
@@ -452,12 +452,15 @@ with the following code::
'mpoly' : 'MULTIPOLYGON',
}
- world_shp = os.path.abspath(os.path.join(os.path.dirname(__file__), 'data', 'TM_WORLD_BORDERS-0.3.shp'))
+ world_shp = os.path.abspath(
+ os.path.join(os.path.dirname(__file__), 'data', 'TM_WORLD_BORDERS-0.3.shp'),
+ )
def run(verbose=True):
- lm = LayerMapping(WorldBorder, world_shp, world_mapping,
- transform=False, encoding='iso-8859-1')
-
+ lm = LayerMapping(
+ WorldBorder, world_shp, world_mapping,
+ transform=False, encoding='iso-8859-1',
+ )
lm.save(strict=True, verbose=verbose)
A few notes about what's going on:
diff --git a/docs/ref/contrib/messages.txt b/docs/ref/contrib/messages.txt
index 414cf211160..3343707d695 100644
--- a/docs/ref/contrib/messages.txt
+++ b/docs/ref/contrib/messages.txt
@@ -320,8 +320,7 @@ Adding extra message tags
For more direct control over message tags, you can optionally provide a string
containing extra tags to any of the add methods::
- messages.add_message(request, messages.INFO, 'Over 9000!',
- extra_tags='dragonball')
+ messages.add_message(request, messages.INFO, 'Over 9000!', extra_tags='dragonball')
messages.error(request, 'Email box full', extra_tags='email')
Extra tags are added before the default tag for that level and are space
@@ -336,8 +335,10 @@ if they don't want to, you may pass an additional keyword argument
``fail_silently=True`` to any of the ``add_message`` family of methods. For
example::
- messages.add_message(request, messages.SUCCESS, 'Profile details updated.',
- fail_silently=True)
+ messages.add_message(
+ request, messages.SUCCESS, 'Profile details updated.',
+ fail_silently=True,
+ )
messages.info(request, 'Hello world.', fail_silently=True)
.. note::
diff --git a/docs/ref/contrib/sites.txt b/docs/ref/contrib/sites.txt
index ec2c1bf2b26..557795b6912 100644
--- a/docs/ref/contrib/sites.txt
+++ b/docs/ref/contrib/sites.txt
@@ -202,10 +202,14 @@ Here's an example of what the form-handling view looks like::
# ...
current_site = get_current_site(request)
- send_mail('Thanks for subscribing to %s alerts' % current_site.name,
- 'Thanks for your subscription. We appreciate it.\n\n-The %s team.' % current_site.name,
+ send_mail(
+ 'Thanks for subscribing to %s alerts' % current_site.name,
+ 'Thanks for your subscription. We appreciate it.\n\n-The %s team.' % (
+ current_site.name,
+ ),
'editor@%s' % current_site.domain,
- [user.email])
+ [user.email],
+ )
# ...
diff --git a/docs/ref/forms/fields.txt b/docs/ref/forms/fields.txt
index b81dbef61c0..e6490d6ca66 100644
--- a/docs/ref/forms/fields.txt
+++ b/docs/ref/forms/fields.txt
@@ -1006,16 +1006,25 @@ Slightly complex built-in ``Field`` classes
}
# Or define a different message for each field.
fields = (
- CharField(error_messages={'incomplete': 'Enter a country calling code.'},
- validators=[RegexValidator(r'^[0-9]+$', 'Enter a valid country calling code.')]),
- CharField(error_messages={'incomplete': 'Enter a phone number.'},
- validators=[RegexValidator(r'^[0-9]+$', 'Enter a valid phone number.')]),
- CharField(validators=[RegexValidator(r'^[0-9]+$', 'Enter a valid extension.')],
- required=False),
+ CharField(
+ error_messages={'incomplete': 'Enter a country calling code.'},
+ validators=[
+ RegexValidator(r'^[0-9]+$', 'Enter a valid country calling code.'),
+ ],
+ ),
+ CharField(
+ error_messages={'incomplete': 'Enter a phone number.'},
+ validators=[RegexValidator(r'^[0-9]+$', 'Enter a valid phone number.')],
+ ),
+ CharField(
+ validators=[RegexValidator(r'^[0-9]+$', 'Enter a valid extension.')],
+ required=False,
+ ),
)
super(PhoneField, self).__init__(
error_messages=error_messages, fields=fields,
- require_all_fields=False, *args, **kwargs)
+ require_all_fields=False, *args, **kwargs
+ )
.. attribute:: MultiValueField.widget
diff --git a/docs/ref/forms/widgets.txt b/docs/ref/forms/widgets.txt
index 88ac06903ca..071053307ef 100644
--- a/docs/ref/forms/widgets.txt
+++ b/docs/ref/forms/widgets.txt
@@ -62,8 +62,11 @@ widget on the field. In the following example, the
class SimpleForm(forms.Form):
birth_year = forms.DateField(widget=forms.SelectDateWidget(years=BIRTH_YEAR_CHOICES))
- favorite_colors = forms.MultipleChoiceField(required=False,
- widget=forms.CheckboxSelectMultiple, choices=FAVORITE_COLORS_CHOICES)
+ favorite_colors = forms.MultipleChoiceField(
+ required=False,
+ widget=forms.CheckboxSelectMultiple,
+ choices=FAVORITE_COLORS_CHOICES,
+ )
See the :ref:`built-in widgets` for more information about which widgets
are available and which arguments they accept.
diff --git a/docs/ref/models/expressions.txt b/docs/ref/models/expressions.txt
index d29d8d05b4f..6c767658afc 100644
--- a/docs/ref/models/expressions.txt
+++ b/docs/ref/models/expressions.txt
@@ -375,7 +375,8 @@ SQL that is generated. Here's a brief example::
expression,
distinct='DISTINCT ' if distinct else '',
output_field=IntegerField(),
- **extra)
+ **extra
+ )
``Value()`` expressions
diff --git a/docs/ref/models/fields.txt b/docs/ref/models/fields.txt
index bafe881cd98..eb93bbab6ea 100644
--- a/docs/ref/models/fields.txt
+++ b/docs/ref/models/fields.txt
@@ -112,9 +112,11 @@ define a suitably-named constant for each value::
(JUNIOR, 'Junior'),
(SENIOR, 'Senior'),
)
- year_in_school = models.CharField(max_length=2,
- choices=YEAR_IN_SCHOOL_CHOICES,
- default=FRESHMAN)
+ year_in_school = models.CharField(
+ max_length=2,
+ choices=YEAR_IN_SCHOOL_CHOICES,
+ default=FRESHMAN,
+ )
def is_upperclass(self):
return self.year_in_school in (self.JUNIOR, self.SENIOR)
diff --git a/docs/topics/auth/customizing.txt b/docs/topics/auth/customizing.txt
index 8dd938e59aa..d12fa6a212d 100644
--- a/docs/topics/auth/customizing.txt
+++ b/docs/topics/auth/customizing.txt
@@ -971,9 +971,10 @@ authentication app::
Creates and saves a superuser with the given email, date of
birth and password.
"""
- user = self.create_user(email,
+ user = self.create_user(
+ email,
password=password,
- date_of_birth=date_of_birth
+ date_of_birth=date_of_birth,
)
user.is_admin = True
user.save(using=self._db)
diff --git a/docs/topics/auth/default.txt b/docs/topics/auth/default.txt
index 7e6794a97b3..12a5602b5a4 100644
--- a/docs/topics/auth/default.txt
+++ b/docs/topics/auth/default.txt
@@ -249,9 +249,11 @@ in ``myapp``::
from django.contrib.contenttypes.models import ContentType
content_type = ContentType.objects.get_for_model(BlogPost)
- permission = Permission.objects.create(codename='can_publish',
- name='Can Publish Posts',
- content_type=content_type)
+ permission = Permission.objects.create(
+ codename='can_publish',
+ name='Can Publish Posts',
+ content_type=content_type,
+ )
The permission can then be assigned to a
:class:`~django.contrib.auth.models.User` via its ``user_permissions``
diff --git a/docs/topics/db/queries.txt b/docs/topics/db/queries.txt
index 57408ee224f..b1f1f2f7464 100644
--- a/docs/topics/db/queries.txt
+++ b/docs/topics/db/queries.txt
@@ -849,14 +849,16 @@ precede the definition of any keyword arguments. For example::
Poll.objects.get(
Q(pub_date=date(2005, 5, 2)) | Q(pub_date=date(2005, 5, 6)),
- question__startswith='Who')
+ question__startswith='Who',
+ )
... would be a valid query, equivalent to the previous example; but::
# INVALID QUERY
Poll.objects.get(
question__startswith='Who',
- Q(pub_date=date(2005, 5, 2)) | Q(pub_date=date(2005, 5, 6)))
+ Q(pub_date=date(2005, 5, 2)) | Q(pub_date=date(2005, 5, 6))
+ )
... would not be valid.
diff --git a/docs/topics/email.txt b/docs/topics/email.txt
index e26bfb3535c..2b880e0ba94 100644
--- a/docs/topics/email.txt
+++ b/docs/topics/email.txt
@@ -20,8 +20,13 @@ In two lines::
from django.core.mail import send_mail
- send_mail('Subject here', 'Here is the message.', 'from@example.com',
- ['to@example.com'], fail_silently=False)
+ send_mail(
+ 'Subject here',
+ 'Here is the message.',
+ 'from@example.com',
+ ['to@example.com'],
+ fail_silently=False,
+ )
Mail is sent using the SMTP host and port specified in the
:setting:`EMAIL_HOST` and :setting:`EMAIL_PORT` settings. The
@@ -149,8 +154,12 @@ Examples
This sends a single email to john@example.com and jane@example.com, with them
both appearing in the "To:"::
- send_mail('Subject', 'Message.', 'from@example.com',
- ['john@example.com', 'jane@example.com'])
+ send_mail(
+ 'Subject',
+ 'Message.',
+ 'from@example.com',
+ ['john@example.com', 'jane@example.com'],
+ )
This sends a message to john@example.com and jane@example.com, with them both
receiving a separate email::
@@ -281,9 +290,15 @@ For example::
from django.core.mail import EmailMessage
- email = EmailMessage('Hello', 'Body goes here', 'from@example.com',
- ['to1@example.com', 'to2@example.com'], ['bcc@example.com'],
- reply_to=['another@example.com'], headers={'Message-ID': 'foo'})
+ email = EmailMessage(
+ 'Hello',
+ 'Body goes here',
+ 'from@example.com',
+ ['to1@example.com', 'to2@example.com'],
+ ['bcc@example.com'],
+ reply_to=['another@example.com'],
+ headers={'Message-ID': 'foo'},
+ )
The class has the following methods:
@@ -405,10 +420,14 @@ It can also be used as a context manager, which will automatically call
from django.core import mail
with mail.get_connection() as connection:
- mail.EmailMessage(subject1, body1, from1, [to1],
- connection=connection).send()
- mail.EmailMessage(subject2, body2, from2, [to2],
- connection=connection).send()
+ mail.EmailMessage(
+ subject1, body1, from1, [to1],
+ connection=connection,
+ ).send()
+ mail.EmailMessage(
+ subject2, body2, from2, [to2],
+ connection=connection,
+ ).send()
Obtaining an instance of an email backend
-----------------------------------------
@@ -592,15 +611,28 @@ manually open the connection, you can control when it is closed. For example::
connection.open()
# Construct an email message that uses the connection
- email1 = mail.EmailMessage('Hello', 'Body goes here', 'from@example.com',
- ['to1@example.com'], connection=connection)
+ email1 = mail.EmailMessage(
+ 'Hello',
+ 'Body goes here',
+ 'from@example.com',
+ ['to1@example.com'],
+ connection=connection,
+ )
email1.send() # Send the email
# Construct two more messages
- email2 = mail.EmailMessage('Hello', 'Body goes here', 'from@example.com',
- ['to2@example.com'])
- email3 = mail.EmailMessage('Hello', 'Body goes here', 'from@example.com',
- ['to3@example.com'])
+ email2 = mail.EmailMessage(
+ 'Hello',
+ 'Body goes here',
+ 'from@example.com',
+ ['to2@example.com'],
+ )
+ email3 = mail.EmailMessage(
+ 'Hello',
+ 'Body goes here',
+ 'from@example.com',
+ ['to3@example.com'],
+ )
# Send the two emails in a single call -
connection.send_messages([email2, email3])
diff --git a/docs/topics/forms/modelforms.txt b/docs/topics/forms/modelforms.txt
index 146b7503d0f..df6bd6bd38a 100644
--- a/docs/topics/forms/modelforms.txt
+++ b/docs/topics/forms/modelforms.txt
@@ -195,8 +195,10 @@ we'll discuss in a moment.)::
class AuthorForm(forms.Form):
name = forms.CharField(max_length=100)
- title = forms.CharField(max_length=3,
- widget=forms.Select(choices=TITLE_CHOICES))
+ title = forms.CharField(
+ max_length=3,
+ widget=forms.Select(choices=TITLE_CHOICES),
+ )
birth_date = forms.DateField(required=False)
class BookForm(forms.Form):
@@ -589,8 +591,12 @@ the field declaratively and setting its ``validators`` parameter::
For example, if the ``Article`` model looks like this::
class Article(models.Model):
- headline = models.CharField(max_length=200, null=True, blank=True,
- help_text="Use puns liberally")
+ headline = models.CharField(
+ max_length=200,
+ null=True,
+ blank=True,
+ help_text='Use puns liberally',
+ )
content = models.TextField()
and you want to do some custom validation for ``headline``, while keeping
@@ -598,8 +604,11 @@ the field declaratively and setting its ``validators`` parameter::
``ArticleForm`` like this::
class ArticleForm(ModelForm):
- headline = MyFormField(max_length=200, required=False,
- help_text="Use puns liberally")
+ headline = MyFormField(
+ max_length=200,
+ required=False,
+ help_text='Use puns liberally',
+ )
class Meta:
model = Article
@@ -1022,8 +1031,10 @@ formset::
def manage_authors(request):
AuthorFormSet = modelformset_factory(Author, fields=('name', 'title'))
if request.method == "POST":
- formset = AuthorFormSet(request.POST, request.FILES,
- queryset=Author.objects.filter(name__startswith='O'))
+ formset = AuthorFormSet(
+ request.POST, request.FILES,
+ queryset=Author.objects.filter(name__startswith='O'),
+ )
if formset.is_valid():
formset.save()
# Do something.
diff --git a/docs/topics/http/shortcuts.txt b/docs/topics/http/shortcuts.txt
index af2da254fb7..705de11b690 100644
--- a/docs/topics/http/shortcuts.txt
+++ b/docs/topics/http/shortcuts.txt
@@ -66,8 +66,9 @@ MIME type :mimetype:`application/xhtml+xml`::
def my_view(request):
# View code here...
- return render(request, 'myapp/index.html', {"foo": "bar"},
- content_type="application/xhtml+xml")
+ return render(request, 'myapp/index.html', {
+ 'foo': 'bar',
+ }, content_type='application/xhtml+xml')
This example is equivalent to::
@@ -78,8 +79,7 @@ This example is equivalent to::
# View code here...
t = loader.get_template('myapp/index.html')
c = {'foo': 'bar'}
- return HttpResponse(t.render(c, request),
- content_type="application/xhtml+xml")
+ return HttpResponse(t.render(c, request), content_type='application/xhtml+xml')
``render_to_response()``
========================
diff --git a/docs/topics/i18n/timezones.txt b/docs/topics/i18n/timezones.txt
index 674edc1a194..7beffdea729 100644
--- a/docs/topics/i18n/timezones.txt
+++ b/docs/topics/i18n/timezones.txt
@@ -434,8 +434,9 @@ traceback by adding the following to your settings file::
import warnings
warnings.filterwarnings(
- 'error', r"DateTimeField .* received a naive datetime",
- RuntimeWarning, r'django\.db\.models\.fields')
+ 'error', r"DateTimeField .* received a naive datetime",
+ RuntimeWarning, r'django\.db\.models\.fields',
+ )
Fixtures
--------
diff --git a/docs/topics/i18n/translation.txt b/docs/topics/i18n/translation.txt
index 3046d7ca3b0..b1d1e8e3bea 100644
--- a/docs/topics/i18n/translation.txt
+++ b/docs/topics/i18n/translation.txt
@@ -468,8 +468,10 @@ If the string contains exactly one unnamed placeholder, you can interpolate
directly with the ``number`` argument::
class MyForm(forms.Form):
- error_message = ungettext_lazy("You provided %d argument",
- "You provided %d arguments")
+ error_message = ungettext_lazy(
+ "You provided %d argument",
+ "You provided %d arguments",
+ )
def clean(self):
# ...
@@ -1843,8 +1845,11 @@ If you need more flexibility, you could also add a new argument to your custom
def add_arguments(self, parser):
super(Command, self).add_arguments(parser)
- parser.add_argument('--extra-keyword', dest='xgettext_keywords',
- action='append')
+ parser.add_argument(
+ '--extra-keyword',
+ dest='xgettext_keywords',
+ action='append',
+ )
def handle(self, *args, **options):
xgettext_keywords = options.pop('xgettext_keywords')