Size: a a a

2021 June 10

SS

Sergey Sukhov in Moscow Python
Но иисусом местным могу стать, чатек уже использует мою фразу про душнил)
источник

XL

Xenia Lyzhina in Moscow Python
ты считай уже заложил начало своей религии
источник

N

Nikolay in Moscow Python
источник

AC

Alexei Che in Moscow Python
Кто-нибудь работал с pydantic?
источник

AC

Alexei Che in Moscow Python
Хочу так

cards: Union[List[TaxesToBePaidCard], List[TaxesToSignCard]]

но он не может. Есть варианты?
источник

ПМ

Павел Мальцев... in Moscow Python
TaxesToBePaidCard это класс пидантика?
источник

AC

Alexei Che in Moscow Python
Да, оба
источник

AC

Alexei Che in Moscow Python
Наследуются от другого класса, а тот от BaseModel
источник

ПМ

Павел Мальцев... in Moscow Python
а что хоть пишет?
источник

AT

Andrey Terekhov in Moscow Python
вообще должен, пришли ошибку
источник

AC

Alexei Che in Moscow Python
Ну там есть  поле у обоих классов
id
,  и он TaxesToSignCard кидает в TaxesToBePaidCard, и ругается на поле
источник

ПМ

Павел Мальцев... in Moscow Python
так он на id ругается
источник

ПМ

Павел Мальцев... in Moscow Python
зотя не
источник

AT

Andrey Terekhov in Moscow Python
мне кажется он пытается TaxesToSignCard скастовать в TaxesToBePaidCard
источник

AC

Alexei Che in Moscow Python
Нет, он ругается что это id не подходит к первому классу
источник

ПМ

Павел Мальцев... in Moscow Python
источник

AT

Andrey Terekhov in Moscow Python
короче я такие штуки разрешаю через валидатор
источник

ПМ

Павел Мальцев... in Moscow Python
from pydantic import BaseModel
from typing import List, Union


class TaxesToBePaidCard(BaseModel):
   id: int


class TaxesToSignCard(BaseModel):
   id: int


class Test(BaseModel):
   cards: Union[List[TaxesToBePaidCard], List[TaxesToSignCard]]


cards_1 = TaxesToBePaidCard(id=1)

cards_2 = TaxesToSignCard(id=1)


test_1 = Test(cards=[cards_1])
test_2 = Test(cards=[cards_2])

print(test_1.dict())
print(test_2.dict())
источник

AC

Alexei Che in Moscow Python
Так он как раз в валидатор в первом классе заходит и ругается
источник

AT

Andrey Terekhov in Moscow Python
тебе нужно зацепиться за наличие какого-то специфичного поля или ключа и привести к нужному типу
источник