66from django .utils .translation import gettext_lazy as _
77
88from ...utils import prefix_validation_error
9- from ...validators import ArrayMaxLengthValidator , ArrayMinLengthValidator
9+ from ...validators import ArrayMaxLengthValidator , ArrayMinLengthValidator , LengthValidator
1010
1111
1212class SimpleArrayField (forms .CharField ):
1313 default_error_messages = {
1414 "item_invalid" : _ ("Item %(nth)s in the array did not validate:" ),
1515 }
1616
17- def __init__ (self , base_field , * , delimiter = "," , max_length = None , min_length = None , ** kwargs ):
17+ def __init__ (
18+ self , base_field , * , delimiter = "," , max_length = None , min_length = None , size = None , ** kwargs
19+ ):
1820 self .base_field = base_field
1921 self .delimiter = delimiter
2022 super ().__init__ (** kwargs )
@@ -24,6 +26,9 @@ def __init__(self, base_field, *, delimiter=",", max_length=None, min_length=Non
2426 if max_length is not None :
2527 self .max_length = max_length
2628 self .validators .append (ArrayMaxLengthValidator (int (max_length )))
29+ if size is not None :
30+ self .size = size
31+ self .validators .append (LengthValidator (int (size )))
2732
2833 def clean (self , value ):
2934 value = super ().clean (value )
0 commit comments