Встречается на собеседованиях • сегодня

Что такое сериализатор (serializer) в Django

Сериализатор в Django — это инструмент для преобразования сложных типов данных (например, моделей Django или QuerySet) в Python-примитивы (например, словари или списки), которые затем можно легко преобразовать в JSON, XML или другие форматы. Также он выполняет обратную операцию — десериализацию (валидацию и преобразование входящих данных в Python-объекты).

Основные функции:

  • Валидация данных перед сохранением.
  • Преобразование объектов в JSON и обратно.
  • Упрощение работы с API (например, в DRF — Django REST Framework).

Пример с DRF:

python
from rest_framework import serializers
from .models import Book

class BookSerializer(serializers.ModelSerializer):
    class Meta:
        model = Book
        fields = ['id', 'title', 'author']

# Сериализация:
book = Book.objects.get(id=1)
serializer = BookSerializer(book)
json_data = serializer.data  # {'id': 1, 'title': 'Django for Beginners', 'author': 'William S.'}

# Десериализация:
data = {'title': 'New Book', 'author': 'John Doe'}
serializer = BookSerializer(data=data)
if serializer.is_valid():
    book = serializer.save()
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы