yandex_music.base¶
- class yandex_music.base.YandexMusicModel¶
Bases:
YandexMusicObject
Базовый класс для всех моделей библиотеки.
- classmethod cleanup_data(data: Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None, client: ClientType | None) Dict[str, ModelFieldType] ¶
Удаляет незадекларированные поля для текущей модели из сырых данных.
Note
Фильтрует только словарь поле:значение. Иначе вернёт пустой
dict
.- Parameters:
data (
JSONType
) – Поля и значения десериализуемого объекта.client (
yandex_music.Client
, optional) – Клиент Yandex Music.
- Returns:
Отфильтрованные данные.
- Return type:
ModelFieldMap
- classmethod de_json(data: JSONType, client: ClientType) Self | None ¶
Десериализация объекта.
Note
Переопределяется в дочерних классах когда есть вложенные объекты.
- Parameters:
data (
JSONType
) – Поля и значения десериализуемого объекта.client (
yandex_music.Client
, optional) – Клиент Yandex Music.
- Returns:
Десериализованный объект.
- Return type:
- classmethod de_list(data: Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None, client: ClientType) Sequence[Self] ¶
Десериализация списка объектов.
Note
Переопределяется в дочерних классах, если необходимо.
Например, в сложных объектах где есть вариации подтипов.
- Parameters:
data (
JSONType
) – Список словарей с полями и значениями десериализуемого объекта.client (
yandex_music.Client
, optional) – Клиент Yandex Music.
- Returns:
Список десериализованных объектов.
- Return type:
list
изyandex_music.YandexMusicModel
- static is_array_model_data(data: Dict[str, Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | Sequence[Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | str | int | float | bool | None) TypeGuard[List[Dict[str, Dict[str, Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | Sequence[Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | str | int | float | bool | None]]] ¶
Проверка на соответствие данных массиву словарей.
- Parameters:
data (
JSONType
) – Данные для проверки.- Returns:
Валидны ли данные.
- Return type:
bool
- static is_dict_model_data(data: Dict[str, Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | Sequence[Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | str | int | float | bool | None) TypeGuard[Dict[str, Dict[str, Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | Sequence[Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | str | int | float | bool | None]] ¶
Проверка на соответствие данных словарю.
- Parameters:
data (
JSONType
) – Данные для проверки.- Returns:
Валидны ли данные.
- Return type:
bool
- static report_unknown_fields_callback(klass: type, unknown_fields: Dict[str, Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | Sequence[Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | str | int | float | bool | None) None ¶
Обратный вызов для обработки неизвестных полей.
- to_dict(for_request: bool = False) Dict[str, Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | Sequence[Dict[str, JSONType] | Sequence[JSONType] | str | int | float | bool | None] | str | int | float | bool | None ¶
Рекурсивная сериализация объекта.
- Parameters:
for_request (
bool
) – Перевести ли обратно все поля в camelCase и игнорировать зарезервированные слова.
Note
Исключает из сериализации client и _id_attrs необходимые в __eq__.
К зарезервированным словам добавляет “_” в конец.
- Returns:
Сериализованный в dict объект.
- Return type:
dict
- to_json(for_request: bool = False) str ¶
Сериализация объекта.
- Parameters:
for_request (
bool
) – Подготовить ли объект для отправки в теле запроса.- Returns:
Сериализованный в JSON объект.
- Return type:
str
- static valid_async_client(client: ClientType | None) TypeGuard[ClientAsync] ¶
Проверка что клиент передан и является асинхронным.
- Parameters:
client (
Optional['ClientType']
) – Клиент для проверки.- Returns:
Асинхронный ли клиент.
- Return type:
bool
- class yandex_music.base.YandexMusicObject¶
Bases:
object
Базовый класс для всех классов библиотеки.