DRF и PostgreSQL: ArrayField возвращается как массив символов
У меня есть модель Contact с полем следующего вида:
#models.py
address = ArrayField(models.CharField(max_length=255, null=True), default=list)
Это хранит массив адресов электронной почты. Я создаю api и хочу, чтобы он возвращался как массив адресов электронной почты в виде строк, но вместо этого я получаю массив символов (как на скриншоте). Может кто-нибудь подсказать мне, что делать?
Мой сериализатор:
class ContactSerializer(serializers.ModelSerializer):
class Meta:
model = Contact
fields = '__all__'
Пробовали ли вы использовать ListField?
class ContactSerializer(serializers.ModelSerializer):
class Meta:
model = Contact
fields = '__all__'
address = serializers.ListField(child=serializers.CharField())
Для устранения проблемы можно попробовать сбросить базу данных. Иногда миграция не помогает. @WillemVanOnsem прав, поле ArrayField было сохранено как строка, а не массив, поэтому оно выводится в виде списка символов