diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index e6f580647..eb74175de 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -52,7 +52,7 @@ from rest_framework.validators import ( # This helps keep the separation between model fields, form fields, and # serializer fields more explicit. from rest_framework.fields import ( # NOQA # isort:skip - BooleanField, CharField, ChoiceField, DateField, DateTimeField, DecimalField, + AppendListField, BooleanField, CharField, ChoiceField, DateField, DateTimeField, DecimalField, DictField, DurationField, EmailField, Field, FileField, FilePathField, FloatField, HiddenField, HStoreField, IPAddressField, ImageField, IntegerField, JSONField, ListField, ModelField, MultipleChoiceField, NullBooleanField, ReadOnlyField, diff --git a/tests/test_fields.py b/tests/test_fields.py index 8a3ba5d17..b9cbe41e4 100644 --- a/tests/test_fields.py +++ b/tests/test_fields.py @@ -16,7 +16,8 @@ from django.utils.timezone import activate, deactivate, override, utc import rest_framework from rest_framework import exceptions, serializers -from rest_framework.compat import ProhibitNullCharactersValidator +from rest_framework.compat import ProhibitNullCharactersValidator, postgres_fields + from rest_framework.fields import DjangoImageField, is_simple_callable try: @@ -2290,13 +2291,13 @@ class TestValidationErrorCode: ] } class ListFieldModel(models.Model): - list_field = models.ListField(child=models.CharField) - + list_field = postgres_fields.ArrayField(models.CharField(max_length=255)) +@pytest.mark.skipif('not postgres_fields') class TestAppendListField(TestCase): class TestSerializer(serializers.ModelSerializer): - list_field = serializers.AppendListField(child=serializers.CharField) + list_field = serializers.AppendListField(child=serializers.CharField(max_length=100)) class Meta: model = ListFieldModel