Встречается на собеседованиях • сегодня
Что такое SerializerMethodField в Django
SerializerMethodField — это поле в Django REST Framework, которое позволяет добавлять в сериализатор произвольные вычисляемые значения. Оно вызывает метод, указанный в параметре method_name, и возвращает его результат.
Пример:
python
from rest_framework import serializers
class UserSerializer(serializers.ModelSerializer):
full_name = serializers.SerializerMethodField()
text
class Meta:
model = User
fields = ['id', 'username', 'full_name']
def get_full_name(self, obj):
return f"{obj.first_name} {obj.last_name}"text
**Особенности:**
- Метод должен начинаться с `get_` (например, `get_full_name`).
- Принимает объект модели (`obj`) и может использовать контекст сериализатора (`self.context`).
- Поле доступно только для чтения (`read_only=True`).
- Полезно для данных, не хранящихся напрямую в модели.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы