Опубликовать СПИСОК ОБЪЕКТОВ из HTML / axios с multipart / form-data в многочастный парсер DRF - PullRequest
0 голосов
/ 05 июля 2019

Это мой сериализатор:

class ParentSerializer(serializers.ModelSerializer):
    children = ChildSerializer(many=True)  # reverse FK relation

ParentSerializer также имеет поле изображения, поэтому запрос должен быть multipart / form-data для поддержки как изображения, так и данных в одном запросе.

Следующий код / ​​тест работает нормально:

test_data = QueryDict('', mutable=True)
dictionary = {
    'name': ['test'],
    'children[0]': [{'key1': 'val1', 'key2': 'val2'}]
}
test_data.update(MultiValueDict(dictionary))

test_serializer = self.get_serializer(data=test_data)
test_serializer.is_valid(raise_exception=True)
test_instance = test_serializer.save()

... потому что я вручную создаю список children.

Проблема в том, что я не могусделать то же самое через форму Axios / HTML.Отправляемые данные преобразуются в строку.

Какие есть варианты?Я хочу отправить список дочерних объектов вместе с другими данными.

DRF v3.9 & Django v2.2.

1 Ответ

1 голос
/ 12 июля 2019

Ваши поля должны быть названы в следующей форме children[0]key1, children[0]key2, children[1]key1, children[1]key2

Обратите внимание, что между ] и именем ключа

нет точки .
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...