Назад к задачам
Условие задачи

Функция create_book отвечает за создание записи модели Book и сопутствующих записей модели BookCover. Список обложек передаётся в виде массива словарей, вложенного в параметр validate_data.

def create_book(validate_data: dict):
    cover_list: list[dict] = validate_data.pop('covers')
    new_book = Book.objects.create(**validate_data)
    objs = []
    for cover_data in cover_list:
        BookCover.objects.create(**cover_data, book=new_book)

Внутри функции сначала извлекаются данные об обложках, затем создаётся объект книги, после чего для каждой обложки формируется отдельная запись, привязанная к только что созданной книге.