Использование Pydantic сегодня стало нормой, и это правильно. Но иногда на ревью вижу, что используют его не всегда корректно.
Например, метод BaseModel.model_dump() по умолчанию не преобразует стандартные типы, такие как datetime, UUID или Decimal, в простой сериализуемый для JSON вид. Тогда пишут кастмоный сериализатор для этих типов чтобы функция json.dump() не падала с ошибкой.
import uuid
from datetime import datetime
from decimal import Decimal
from uuid import UUID
from pydantic import BaseModel
class MyModel(BaseModel):
id: UUID
date: datetime
value: Decimal
obj = MyModel(
id=uuid.uuid4(),
date=datetime.now(),
value='1.23'
)
print(obj.model_dump())
# не подходит для json.dump
# {
# 'id': UUID('4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1'),
# 'date': datetime.datetime(2025, 12, 12, 12, 12, 12, 111111),
# 'value': Decimal('1.23')
# }
# добавляем свой кастомный сериализатор
json.dumps(obj.model_dump(), cls=MySerializer)
# {
# 'id': '4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1',
# 'date': '2025-12-12T12:12:12.111111',
# 'value': '1.23'
# }
В данном случае класс MySerializer обрабатывает datetime, UUID и Decimal. Например так:
class MySerializer(json.JSONEncoder):
def default(self, o):
if isinstance(o, Decimal):
return str(o)
elif isinstance(o, datetime):
return o.isoformat()
elif isinstance(o, UUID):
return str(o)
return super().default(o)
Специально для тех, кто всё еще так делает - в этом нет необходимости!
Pydantic может это сделать сам, просто нужно добавить параметр mode="json".
json.dumps(obj.model_dump(mode="json"))
# {
# 'id': '4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1',
# 'date': '2012-12-12T12:12:12.111111',
# 'value': '1.23'
# }
#pydantic#libs
the truffle hunters, 2020, m. dweck, g. kershaw
север италии, пьемонт. будни пожилых людей, которые в одиночку ходят с собаками по лесам в поисках местных сокровищ. трюфель находится под землёй, пёс унюхивает, разрывает. потом хозяин продаёт его дилеру, а тот перепродает в рестораны, носит на выставки для ценителей. любимые сцены - от первого лица лающих охотников; застольные беседы с ними же. #doc
А мы напоминаем, что программа Bastau Docs есть на сайте фестиваля.)
Bastau Docs - сегодня, Синий зал #doc
НЕОБРАТИМОСТЬ (Сказка времени, которое не вернётся) - 14:00
Павле Терзич, Сербия, 2023, 107 мин
Из Детройта, через Чикаго, в направлении Манчестера и дальше к Берлину и Белграду. Независимо от того, звучит ли рейв на подпольной (в прямом и в переносном смысле) клубной площадке или на сценах больших залов, электронный звук становится своего рода новой музыкальной религией.
ГОЛОС ЛЕДНИКА - 16:00
Ядыкар Ибраимов, Казахстан, 2023, 80 мин
Хорошо известно, что ледники тают из-за климатического кризиса, но как именно это происходит? Эко-триллер о таянии ледника Туюксу в Казахстане — и работа ученых, которые документируют этот процесс.
Коллектив Women Make Docs анализирует фильм «Голос ледника»
ДОЧЬ ХУДОЖНИКА - 18:00
Маргарита Линтон, Янив Линтон, Израиль, 2022, 60 мин
Она присоединяется к экскурсии по выставке известного художника. Мужчина на автопортретах — её отец, но об этом знают лишь немногие. Она связывается с художником впервые за десять лет и делится своей идеей снять фильм об их отношениях, которые возобновились благодаря его творчеству. Взволнованный художник отправляет её снимать свою выставку. По ходу работы над фильмом она обнаруживает, что встреча с человеком, стоящим за портретами, является для нее настоящим испытанием. «Дочь художника» рисует ошеломляющий и удивительный портрет отношений, которые могут существовать только в кино.
Моше Циммерман, Пицца в Освенциме, 2008
главный герой, Данни Ханох, переживший все ужасы Холокоста, кочуя из одного концлагеря в другой исполняет свою мечту: возвращается, чтобы посетить лагеря вместе со своими детьми. у него есть план, он хочет снова переночевать в бараке. воспоминания о кошмаре становятся травмой для следующего поколения. #doc
Fifi az khoshhali zooze mikeshad, 2013
Фифи воет от счастья
r. Mitra Farahani
полу-забытый иранский художник и скульптор Бахман Мохассес давно покинувший Тегеран живёт в итальянском отеле. он ужасающе хохочет и кашляет и с упоением рассказывает (листая каталог своих работ) как он уничтожал их. потому что не хочет оставаться в памяти потомков.
получение нового заказа обрекает на невозможность нахождения правильного оттенка краски. желание курить выступает против кашля. а камера, установленная так чтобы точно заснять первое касание кисти, по иронии записывает последние звуки.
расстояние между художником и картиной, режиссёркой (которая фарахани, но не родственница другому фарахани) и фильмом постоянно пружинит и чуть меняется пока они общаются между собой, но кажется что ни фильм, ни каталоги, ни заказчики не вызывает такого трепета как (портрет?) Фифи. такое не продаётся.
и сколько бы Мохассес не рвал свои картины раньше и не язвил вот тут он и есть. ну и нет его тоже тут.
#doc
#pulpnonfiction#doc
«Венедикт Ерофеев: посторонний». Олег Лекманов, Михаил Свердлов, Илья Симановский (РЕШ, 2018)
Биография Венички, сделанная в технике монтажа фактов и воспоминаний, запараллелена литературоведческому анализу поэмы «Москва-Петушки». Краткий вердикт: читать, подавляя мысли «ну как же так-то».
Текст про эту книгу внезапно нашел отклик у аудитории Дзена (только не читайте комментарии, просто не читайте комментарии).
#pulpnonfiction#doc
«Батенька, да вы трансформер» или «Как стать знаменитым, счастливым, найти себя и свою любовь, предсказать будущее и вылечить все болезни»
1. Для тех кто не следит за «звездами соцсети» (а именно так называется серия АСТ, в которой вышла эта книга): «Батенька, да вы трансформер» — это своеобразное, но очень любопытное медиа, напоминающее одновременно и «Русского репортера», и «Русскую жизнь».
2. В магазине книга стояла на полке «Самиздат», но в книжном понимании это, конечно, никакой не самиздат, а издание тиражом 2000 экземпляров со всеми прелестями АСТ: газетная бумага, плохая техническая верстка и корректура ниже плинтуса (корректора в выходных данных нет в принципе).
3. Верстка веб-статей перенесена в печатную книгу буквально: с батеньковским шрифтом, флаговым набором, отступами под буквицами, прерывистыми линиями на шмуцах и так далее. Не заморачивались ребята.
4. А еще в книге, конечно, нет замечательных иллюстраций, коубов и видео (или qr- кодов), которые есть в вебе
#рекурсия#doc
Дочитала сборник статей Аркадия Мильчина (тот самый, написавший «Справочник издателя и автора») о культуре издания книг. Общий посыл: правила оформления нужны не потому что так принято и такой ГОСТ (с ГОСТами Мильчин иногда спорит), а потому что поставьте себя на место читателя — как будет удобнее ему?
Если взять с полки несколько случайных книг, то неграмотное оформление будет у каждой второй. А у каждой первой не будет, только потому что это художка русского автора, причем состоящая из одного романа без деления на главы. Хоть подхватывай знамёна и пиши доколе-заметки в «Книжное обозрение».
Типичные ошибки собрала в статье.
My Octopus Teacher, 2020
Мой учитель - осьминог
r. P. Ehrlich, J. Reed
в документалистике тонкая грань между автором и обьектом изучения, а в случае с фильмом про учение осьминога почему-то постоянно кажется что эта грань нарушается. что у дайвера на протяжении года нездоровая одержимость и желание проводить дни в обществе харизматичной мадам осьминог.
#doc#leaveoctopusalone