TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #397 · 12 ное.

Использование 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

Резултати

Пронајдени 3 слични објави

Пребарај: #henninglarsen

当前筛选 #henninglarsen清除筛选

The Salling Roofgarden - an extension to the popular Salling Rooftop - is now open. Surrounded by trees and hundreds of plants, the new garden located on the roof of the historic 6-story department store adds 1,400m²/15,070 ft² to the existing rooftop, offering citizens and visitors a piece of #urbannature in the busy city center. A #verticalgarden on the facade facing the pedestrian shopping street runs through all six stories, connecting the roof to the street level. The entire city can be viewed from the new lookout platform 35 meters/115 feet above the city’s streetscape while skywalks make it possible for people to move between the different facilities, even offering a peek into the department store's ground floor. The Salling Roofgarden is done by Henning Larsen in collaboration with Ramboll group and A.Enggaard Photos by Martin Schubert. #arch_shovel#architecture#henninglarsen

Eight-storey wooden building for the Nordhavn waterfront on the eastern edge of Copenhagen. The landscape design at Marmormolen in Copenhagen revolves around a unified symbiosis of greenery on the rooftops, courtyards, inside and around the office building — which will become one of Denmark's largest timber constructions — to create a living and lush experience for employees, visitors and pedestrians. Architecture, landscape architecture and interior design: Henning Larsen Architects in collaboration with AP Pension and Ramboll denmark. Renders by IMIGO (1+2) and Sora (3+4). #arch_shovel#architecture#henninglarsen#architects#denmark#copenhagen#landscapeDesign

The circular form of World of Volvo. Architecture by Henning Larsen. Visualization by Kvant.1 and Henning Larsen . #iarchitectures#superarchitects#flatdesign#architectural#archdaily#architecture#architecturedrawing#archi_students#showitbetter#archisource#archdraw#architecturedesign#arch_shovel#henninglarsen