From 43b574007ef5edfe11f3b899fbe0a6fc05c43774 Mon Sep 17 00:00:00 2001 From: Claude Paroz Date: Sat, 3 Jun 2017 16:49:01 +0200 Subject: Fixed #28192 -- Required passing optional form field args as keyword args. --- docs/ref/forms/fields.txt | 4 ++-- docs/releases/2.0.txt | 13 +++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) (limited to 'docs') diff --git a/docs/ref/forms/fields.txt b/docs/ref/forms/fields.txt index 442ec58da9..473ce3d4e0 100644 --- a/docs/ref/forms/fields.txt +++ b/docs/ref/forms/fields.txt @@ -1006,7 +1006,7 @@ Slightly complex built-in ``Field`` classes from django.core.validators import RegexValidator class PhoneField(MultiValueField): - def __init__(self, *args, **kwargs): + def __init__(self, **kwargs): # Define one message for all fields. error_messages = { 'incomplete': 'Enter a country calling code and a phone number.', @@ -1030,7 +1030,7 @@ Slightly complex built-in ``Field`` classes ) super().__init__( error_messages=error_messages, fields=fields, - require_all_fields=False, *args, **kwargs + require_all_fields=False, **kwargs ) .. attribute:: MultiValueField.widget diff --git a/docs/releases/2.0.txt b/docs/releases/2.0.txt index d1ea0cef48..9c0f960d35 100644 --- a/docs/releases/2.0.txt +++ b/docs/releases/2.0.txt @@ -351,6 +351,19 @@ now prohibited, e.g.:: ... TypeError: Cannot reverse a query once a slice has been taken. +Form fields no longer accept optional arguments as positional arguments +----------------------------------------------------------------------- + +To help prevent runtime errors due to incorrect ordering of form field +arguments, optional arguments of built-in form fields are no longer accepted +as positional arguments. For example:: + + forms.IntegerField(25, 10) + +raises an exception and should be replaced with:: + + forms.IntegerField(max_value=25, min_value=10) + Miscellaneous ------------- -- cgit v1.3