@CodeXBotz · Post #1351 · 01.06.2022 г., 17:21
#TechUpdate 1 Minute Instagram Stories Instagram started to roll out 1minute stories https://instagram.com/stories/_u.n__k.n.o.w.n_/2851147491154648451?igshid=MDJmNzVkMjY=
Hashtags
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
Пребарај: #techupdate
@CodeXBotz · Post #1351 · 01.06.2022 г., 17:21
#TechUpdate 1 Minute Instagram Stories Instagram started to roll out 1minute stories https://instagram.com/stories/_u.n__k.n.o.w.n_/2851147491154648451?igshid=MDJmNzVkMjY=
Hashtags
@CryptoM · Post #64676 · 09.04.2026 г., 13:44
🚀 Etherscan Enhances Contract Page with New Features Etherscan has announced a revamp of its contract page, introducing an IDE-style code browser. According to Foresight News, the update includes features such as file tree navigation, multi-file tabs, contract outline jumping, and cross-file keyword search. The redesign also improves the interaction interface for reading and writing contract pages, aiming to enhance the user experience in reading and operating smart contracts. Users can now switch to full-screen mode and open matching contract codes directly in Blockscan and Ethereum Remix for editing. #Etherscan#SmartContracts#Blockchain#Ethereum#CodeBrowser#DeveloperTools#Crypto#IDE#BlockchainDevelopment#TechUpdate#ETH
@CryptoM · Post #65162 · 11.04.2026 г., 14:05
🚀 Hermes Agent Integrates Native Support for Personal WeChat Use Hermes Agent now offers native support for personal WeChat accounts, allowing users to connect easily via QR code for use in private and group chats. According to Foresight News, the adapter utilizes Tencent's official iLink Bot API, enabling comprehensive coverage of images, videos, files, and voice messages, ensuring convenient long-polling direct connections without the need for a public IP. Users can experience this by running 'hermes update'. The adapter employs Tencent's official iLink Bot API rather than reverse engineering protocols or unofficial clients. For users concerned about account bans, it is recommended to test using secondary accounts. #HermesAgent#WeChat#Tencent#iLinkBotAPI#QRcode#GroupChats#PrivateChats#LongPolling#UserExperience#TechUpdate