|
1 | 1 | import json
|
2 | 2 |
|
3 |
| -from django.contrib.postgres.validators import ArrayMaxLengthValidator |
4 | 3 | from django.core import checks, exceptions
|
5 | 4 | from django.db.models import DecimalField, Field, Func, IntegerField, Transform, Value
|
6 | 5 | from django.db.models.fields.mixins import CheckFieldDefaultMixin
|
|
10 | 9 | from ..forms import SimpleArrayField
|
11 | 10 | from ..query_utils import process_lhs, process_rhs
|
12 | 11 | from ..utils import prefix_validation_error
|
13 |
| -from .validators import LengthValidator |
| 12 | +from ..validators import ArrayMaxLengthValidator, LengthValidator |
14 | 13 |
|
15 | 14 | __all__ = ["ArrayField"]
|
16 | 15 |
|
@@ -42,7 +41,6 @@ def __init__(self, base_field, max_size=None, size=None, **kwargs):
|
42 | 41 | if self.size:
|
43 | 42 | self.default_validators = [
|
44 | 43 | *self.default_validators,
|
45 |
| - ArrayMaxLengthValidator(self.size), |
46 | 44 | LengthValidator(self.size),
|
47 | 45 | ]
|
48 | 46 | # For performance, only add a from_db_value() method if the base field
|
@@ -221,6 +219,7 @@ def formfield(self, **kwargs):
|
221 | 219 | "form_class": SimpleArrayField,
|
222 | 220 | "base_field": self.base_field.formfield(),
|
223 | 221 | "max_length": self.max_size,
|
| 222 | + "size": self.size, |
224 | 223 | **kwargs,
|
225 | 224 | }
|
226 | 225 | )
|
|
0 commit comments