Можно ли получить значение поля из сериализованного объекта в Django Rest Framework? Что-то вроде этого:

serializer = PostSerializer(post)
print(serializer.title)
# 'foo title'

Мне это нужно для полей, которые добавлены в сериализатор, но еще не включены в модель, например, если зарегистрированному пользователю понравилась публикация.

7
Sebastian Olsen 21 Апр 2016 в 16:17

3 ответа

Лучший ответ

Я сам разобрался, вам нужно сослаться на класс data внутри сериализатора:

serializer.data['title']
12
Sebastian Olsen 21 Апр 2016 в 13:39

Перед методом .save вы должны использовать validated_data для доступа к полям

serialiser.validated_data['title'] 
1
Vishal Sharma 1 Сен 2019 в 11:12

Привет, вы можете получить данные из API

serializer = StudentSerializer(data=request.data)
    if serializer.is_valid():
        serializer.save()
        email = serializer.data['email']

После этого вы можете использовать эти данные в своем представлении API.

0
Sundaram Seth 19 Апр 2020 в 22:57