I want to validate JSON object (it is in Telegram Bot API) which contains from field (which is reserved word in Python) by using pydantic validator. So my model should look like the following:
class Message(BaseModel):
message_id: int
from: Optional[str]
date: int
chat: Any
...
But using from keyword is not allowed in this context.
How could I do this?
Note: this is different than “Why we can’t use keywords as attributes” because here we get external JSON we don’t control and we anyway should handle JSON with from field.
2
Answers
I believe you can replace
from
withfrom_
.You can do it like this:
There might be a way to do this using a
class
statement, but I didn’t see anything in a quick skim of the documentation. What you could do is use dynamic model creation instead.