@@ -320,7 +320,7 @@ class Field:
320
320
default_empty_html = empty
321
321
initial = None
322
322
323
- def __init__ (self , read_only = False , write_only = False ,
323
+ def __init__ (self , * , read_only = False , write_only = False ,
324
324
required = None , default = empty , initial = empty , source = None ,
325
325
label = None , help_text = None , style = None ,
326
326
error_messages = None , validators = None , allow_null = False ):
@@ -1163,14 +1163,14 @@ class DateTimeField(Field):
1163
1163
}
1164
1164
datetime_parser = datetime .datetime .strptime
1165
1165
1166
- def __init__ (self , format = empty , input_formats = None , default_timezone = None , * args , * *kwargs ):
1166
+ def __init__ (self , format = empty , input_formats = None , default_timezone = None , ** kwargs ):
1167
1167
if format is not empty :
1168
1168
self .format = format
1169
1169
if input_formats is not None :
1170
1170
self .input_formats = input_formats
1171
1171
if default_timezone is not None :
1172
1172
self .timezone = default_timezone
1173
- super ().__init__ (* args , * *kwargs )
1173
+ super ().__init__ (** kwargs )
1174
1174
1175
1175
def enforce_timezone (self , value ):
1176
1176
"""
@@ -1249,12 +1249,12 @@ class DateField(Field):
1249
1249
}
1250
1250
datetime_parser = datetime .datetime .strptime
1251
1251
1252
- def __init__ (self , format = empty , input_formats = None , * args , * *kwargs ):
1252
+ def __init__ (self , format = empty , input_formats = None , ** kwargs ):
1253
1253
if format is not empty :
1254
1254
self .format = format
1255
1255
if input_formats is not None :
1256
1256
self .input_formats = input_formats
1257
- super ().__init__ (* args , * *kwargs )
1257
+ super ().__init__ (** kwargs )
1258
1258
1259
1259
def to_internal_value (self , value ):
1260
1260
input_formats = getattr (self , 'input_formats' , api_settings .DATE_INPUT_FORMATS )
@@ -1315,12 +1315,12 @@ class TimeField(Field):
1315
1315
}
1316
1316
datetime_parser = datetime .datetime .strptime
1317
1317
1318
- def __init__ (self , format = empty , input_formats = None , * args , * *kwargs ):
1318
+ def __init__ (self , format = empty , input_formats = None , ** kwargs ):
1319
1319
if format is not empty :
1320
1320
self .format = format
1321
1321
if input_formats is not None :
1322
1322
self .input_formats = input_formats
1323
- super ().__init__ (* args , * *kwargs )
1323
+ super ().__init__ (** kwargs )
1324
1324
1325
1325
def to_internal_value (self , value ):
1326
1326
input_formats = getattr (self , 'input_formats' , api_settings .TIME_INPUT_FORMATS )
@@ -1470,9 +1470,9 @@ class MultipleChoiceField(ChoiceField):
1470
1470
}
1471
1471
default_empty_html = []
1472
1472
1473
- def __init__ (self , * args , * *kwargs ):
1473
+ def __init__ (self , ** kwargs ):
1474
1474
self .allow_empty = kwargs .pop ('allow_empty' , True )
1475
- super ().__init__ (* args , * *kwargs )
1475
+ super ().__init__ (** kwargs )
1476
1476
1477
1477
def get_value (self , dictionary ):
1478
1478
if self .field_name not in dictionary :
@@ -1529,12 +1529,12 @@ class FileField(Field):
1529
1529
'max_length' : _ ('Ensure this filename has at most {max_length} characters (it has {length}).' ),
1530
1530
}
1531
1531
1532
- def __init__ (self , * args , * *kwargs ):
1532
+ def __init__ (self , ** kwargs ):
1533
1533
self .max_length = kwargs .pop ('max_length' , None )
1534
1534
self .allow_empty_file = kwargs .pop ('allow_empty_file' , False )
1535
1535
if 'use_url' in kwargs :
1536
1536
self .use_url = kwargs .pop ('use_url' )
1537
- super ().__init__ (* args , * *kwargs )
1537
+ super ().__init__ (** kwargs )
1538
1538
1539
1539
def to_internal_value (self , data ):
1540
1540
try :
@@ -1578,9 +1578,9 @@ class ImageField(FileField):
1578
1578
),
1579
1579
}
1580
1580
1581
- def __init__ (self , * args , * *kwargs ):
1581
+ def __init__ (self , ** kwargs ):
1582
1582
self ._DjangoImageField = kwargs .pop ('_DjangoImageField' , DjangoImageField )
1583
- super ().__init__ (* args , * *kwargs )
1583
+ super ().__init__ (** kwargs )
1584
1584
1585
1585
def to_internal_value (self , data ):
1586
1586
# Image validation is a bit grungy, so we'll just outright
@@ -1595,8 +1595,8 @@ def to_internal_value(self, data):
1595
1595
# Composite field types...
1596
1596
1597
1597
class _UnvalidatedField (Field ):
1598
- def __init__ (self , * args , * *kwargs ):
1599
- super ().__init__ (* args , * *kwargs )
1598
+ def __init__ (self , ** kwargs ):
1599
+ super ().__init__ (** kwargs )
1600
1600
self .allow_blank = True
1601
1601
self .allow_null = True
1602
1602
@@ -1617,7 +1617,7 @@ class ListField(Field):
1617
1617
'max_length' : _ ('Ensure this field has no more than {max_length} elements.' )
1618
1618
}
1619
1619
1620
- def __init__ (self , * args , * *kwargs ):
1620
+ def __init__ (self , ** kwargs ):
1621
1621
self .child = kwargs .pop ('child' , copy .deepcopy (self .child ))
1622
1622
self .allow_empty = kwargs .pop ('allow_empty' , True )
1623
1623
self .max_length = kwargs .pop ('max_length' , None )
@@ -1629,7 +1629,7 @@ def __init__(self, *args, **kwargs):
1629
1629
"Remove `source=` from the field declaration."
1630
1630
)
1631
1631
1632
- super ().__init__ (* args , * *kwargs )
1632
+ super ().__init__ (** kwargs )
1633
1633
self .child .bind (field_name = '' , parent = self )
1634
1634
if self .max_length is not None :
1635
1635
message = lazy_format (self .error_messages ['max_length' ], max_length = self .max_length )
@@ -1694,7 +1694,7 @@ class DictField(Field):
1694
1694
'empty' : _ ('This dictionary may not be empty.' ),
1695
1695
}
1696
1696
1697
- def __init__ (self , * args , * *kwargs ):
1697
+ def __init__ (self , ** kwargs ):
1698
1698
self .child = kwargs .pop ('child' , copy .deepcopy (self .child ))
1699
1699
self .allow_empty = kwargs .pop ('allow_empty' , True )
1700
1700
@@ -1704,7 +1704,7 @@ def __init__(self, *args, **kwargs):
1704
1704
"Remove `source=` from the field declaration."
1705
1705
)
1706
1706
1707
- super ().__init__ (* args , * *kwargs )
1707
+ super ().__init__ (** kwargs )
1708
1708
self .child .bind (field_name = '' , parent = self )
1709
1709
1710
1710
def get_value (self , dictionary ):
@@ -1753,8 +1753,8 @@ def run_child_validation(self, data):
1753
1753
class HStoreField (DictField ):
1754
1754
child = CharField (allow_blank = True , allow_null = True )
1755
1755
1756
- def __init__ (self , * args , * *kwargs ):
1757
- super ().__init__ (* args , * *kwargs )
1756
+ def __init__ (self , ** kwargs ):
1757
+ super ().__init__ (** kwargs )
1758
1758
assert isinstance (self .child , CharField ), (
1759
1759
"The `child` argument must be an instance of `CharField`, "
1760
1760
"as the hstore extension stores values as strings."
@@ -1769,11 +1769,11 @@ class JSONField(Field):
1769
1769
# Workaround for isinstance calls when importing the field isn't possible
1770
1770
_is_jsonfield = True
1771
1771
1772
- def __init__ (self , * args , * *kwargs ):
1772
+ def __init__ (self , ** kwargs ):
1773
1773
self .binary = kwargs .pop ('binary' , False )
1774
1774
self .encoder = kwargs .pop ('encoder' , None )
1775
1775
self .decoder = kwargs .pop ('decoder' , None )
1776
- super ().__init__ (* args , * *kwargs )
1776
+ super ().__init__ (** kwargs )
1777
1777
1778
1778
def get_value (self , dictionary ):
1779
1779
if html .is_html_input (dictionary ) and self .field_name in dictionary :
0 commit comments