Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pydanticでTypedDictをバリデーション #43

Open
Tracked by #41
sushichan044 opened this issue Oct 17, 2023 · 4 comments
Open
Tracked by #41

pydanticでTypedDictをバリデーション #43

sushichan044 opened this issue Oct 17, 2023 · 4 comments

Comments

@sushichan044
Copy link
Owner

sushichan044 commented Oct 17, 2023

release in v0.2.5

@sushichan044
Copy link
Owner Author

https://docs.pydantic.dev/latest/api/types/#pydantic.types.constr を見ていたら、
AnnotatedをうまくTypedDictに使えば、IDE側には今と同じ型情報を提供しながら文字列の長さなどのバリデーションが書けそう。やってみる

@sushichan044
Copy link
Owner Author

TypedDictをTypeAdapterでバリデーションするとTypedDictが返ってくるので、

class SelectOption(TypedDict):
    default: NotRequired[Annotated[bool, Field(default=False)]]

みたいなのを書いたときにバリデーションの後もindex accessをやると存在しない可能性があると怒られる。
Annotatedな型を全部切り出して、入力はTypedDictだが内部ではBaseModelで扱う方向にする?

@sushichan044
Copy link
Owner Author

v0.2.5は #54 の修正リリースになる.
v0.3.0でのリリースに変更

@sushichan044
Copy link
Owner Author

実装が難航しているのでできた後の次のMinor Versionで導入する

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant