@@ -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 ):
@@ -1161,14 +1161,14 @@ class DateTimeField(Field):
1161
1161
}
1162
1162
datetime_parser = datetime .datetime .strptime
1163
1163
1164
- def __init__ (self , format = empty , input_formats = None , default_timezone = None , * args , * *kwargs ):
1164
+ def __init__ (self , format = empty , input_formats = None , default_timezone = None , ** kwargs ):
1165
1165
if format is not empty :
1166
1166
self .format = format
1167
1167
if input_formats is not None :
1168
1168
self .input_formats = input_formats
1169
1169
if default_timezone is not None :
1170
1170
self .timezone = default_timezone
1171
- super ().__init__ (* args , * *kwargs )
1171
+ super ().__init__ (** kwargs )
1172
1172
1173
1173
def enforce_timezone (self , value ):
1174
1174
"""
@@ -1247,12 +1247,12 @@ class DateField(Field):
1247
1247
}
1248
1248
datetime_parser = datetime .datetime .strptime
1249
1249
1250
- def __init__ (self , format = empty , input_formats = None , * args , * *kwargs ):
1250
+ def __init__ (self , format = empty , input_formats = None , ** kwargs ):
1251
1251
if format is not empty :
1252
1252
self .format = format
1253
1253
if input_formats is not None :
1254
1254
self .input_formats = input_formats
1255
- super ().__init__ (* args , * *kwargs )
1255
+ super ().__init__ (** kwargs )
1256
1256
1257
1257
def to_internal_value (self , value ):
1258
1258
input_formats = getattr (self , 'input_formats' , api_settings .DATE_INPUT_FORMATS )
@@ -1313,12 +1313,12 @@ class TimeField(Field):
1313
1313
}
1314
1314
datetime_parser = datetime .datetime .strptime
1315
1315
1316
- def __init__ (self , format = empty , input_formats = None , * args , * *kwargs ):
1316
+ def __init__ (self , format = empty , input_formats = None , ** kwargs ):
1317
1317
if format is not empty :
1318
1318
self .format = format
1319
1319
if input_formats is not None :
1320
1320
self .input_formats = input_formats
1321
- super ().__init__ (* args , * *kwargs )
1321
+ super ().__init__ (** kwargs )
1322
1322
1323
1323
def to_internal_value (self , value ):
1324
1324
input_formats = getattr (self , 'input_formats' , api_settings .TIME_INPUT_FORMATS )
@@ -1468,9 +1468,9 @@ class MultipleChoiceField(ChoiceField):
1468
1468
}
1469
1469
default_empty_html = []
1470
1470
1471
- def __init__ (self , * args , * *kwargs ):
1471
+ def __init__ (self , ** kwargs ):
1472
1472
self .allow_empty = kwargs .pop ('allow_empty' , True )
1473
- super ().__init__ (* args , * *kwargs )
1473
+ super ().__init__ (** kwargs )
1474
1474
1475
1475
def get_value (self , dictionary ):
1476
1476
if self .field_name not in dictionary :
@@ -1527,12 +1527,12 @@ class FileField(Field):
1527
1527
'max_length' : _ ('Ensure this filename has at most {max_length} characters (it has {length}).' ),
1528
1528
}
1529
1529
1530
- def __init__ (self , * args , * *kwargs ):
1530
+ def __init__ (self , ** kwargs ):
1531
1531
self .max_length = kwargs .pop ('max_length' , None )
1532
1532
self .allow_empty_file = kwargs .pop ('allow_empty_file' , False )
1533
1533
if 'use_url' in kwargs :
1534
1534
self .use_url = kwargs .pop ('use_url' )
1535
- super ().__init__ (* args , * *kwargs )
1535
+ super ().__init__ (** kwargs )
1536
1536
1537
1537
def to_internal_value (self , data ):
1538
1538
try :
@@ -1576,9 +1576,9 @@ class ImageField(FileField):
1576
1576
),
1577
1577
}
1578
1578
1579
- def __init__ (self , * args , * *kwargs ):
1579
+ def __init__ (self , ** kwargs ):
1580
1580
self ._DjangoImageField = kwargs .pop ('_DjangoImageField' , DjangoImageField )
1581
- super ().__init__ (* args , * *kwargs )
1581
+ super ().__init__ (** kwargs )
1582
1582
1583
1583
def to_internal_value (self , data ):
1584
1584
# Image validation is a bit grungy, so we'll just outright
@@ -1593,8 +1593,8 @@ def to_internal_value(self, data):
1593
1593
# Composite field types...
1594
1594
1595
1595
class _UnvalidatedField (Field ):
1596
- def __init__ (self , * args , * *kwargs ):
1597
- super ().__init__ (* args , * *kwargs )
1596
+ def __init__ (self , ** kwargs ):
1597
+ super ().__init__ (** kwargs )
1598
1598
self .allow_blank = True
1599
1599
self .allow_null = True
1600
1600
@@ -1615,7 +1615,7 @@ class ListField(Field):
1615
1615
'max_length' : _ ('Ensure this field has no more than {max_length} elements.' )
1616
1616
}
1617
1617
1618
- def __init__ (self , * args , * *kwargs ):
1618
+ def __init__ (self , ** kwargs ):
1619
1619
self .child = kwargs .pop ('child' , copy .deepcopy (self .child ))
1620
1620
self .allow_empty = kwargs .pop ('allow_empty' , True )
1621
1621
self .max_length = kwargs .pop ('max_length' , None )
@@ -1627,7 +1627,7 @@ def __init__(self, *args, **kwargs):
1627
1627
"Remove `source=` from the field declaration."
1628
1628
)
1629
1629
1630
- super ().__init__ (* args , * *kwargs )
1630
+ super ().__init__ (** kwargs )
1631
1631
self .child .bind (field_name = '' , parent = self )
1632
1632
if self .max_length is not None :
1633
1633
message = lazy_format (self .error_messages ['max_length' ], max_length = self .max_length )
@@ -1692,7 +1692,7 @@ class DictField(Field):
1692
1692
'empty' : _ ('This dictionary may not be empty.' ),
1693
1693
}
1694
1694
1695
- def __init__ (self , * args , * *kwargs ):
1695
+ def __init__ (self , ** kwargs ):
1696
1696
self .child = kwargs .pop ('child' , copy .deepcopy (self .child ))
1697
1697
self .allow_empty = kwargs .pop ('allow_empty' , True )
1698
1698
@@ -1702,7 +1702,7 @@ def __init__(self, *args, **kwargs):
1702
1702
"Remove `source=` from the field declaration."
1703
1703
)
1704
1704
1705
- super ().__init__ (* args , * *kwargs )
1705
+ super ().__init__ (** kwargs )
1706
1706
self .child .bind (field_name = '' , parent = self )
1707
1707
1708
1708
def get_value (self , dictionary ):
@@ -1751,8 +1751,8 @@ def run_child_validation(self, data):
1751
1751
class HStoreField (DictField ):
1752
1752
child = CharField (allow_blank = True , allow_null = True )
1753
1753
1754
- def __init__ (self , * args , * *kwargs ):
1755
- super ().__init__ (* args , * *kwargs )
1754
+ def __init__ (self , ** kwargs ):
1755
+ super ().__init__ (** kwargs )
1756
1756
assert isinstance (self .child , CharField ), (
1757
1757
"The `child` argument must be an instance of `CharField`, "
1758
1758
"as the hstore extension stores values as strings."
@@ -1767,11 +1767,11 @@ class JSONField(Field):
1767
1767
# Workaround for isinstance calls when importing the field isn't possible
1768
1768
_is_jsonfield = True
1769
1769
1770
- def __init__ (self , * args , * *kwargs ):
1770
+ def __init__ (self , ** kwargs ):
1771
1771
self .binary = kwargs .pop ('binary' , False )
1772
1772
self .encoder = kwargs .pop ('encoder' , None )
1773
1773
self .decoder = kwargs .pop ('decoder' , None )
1774
- super ().__init__ (* args , * *kwargs )
1774
+ super ().__init__ (** kwargs )
1775
1775
1776
1776
def get_value (self , dictionary ):
1777
1777
if html .is_html_input (dictionary ) and self .field_name in dictionary :
0 commit comments