Add support for non-call @root_validator #114
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In Pydantic v1 having a plain decorator like
@root_validator
(without()
) was common and worked fine.In v2,
@model_validator
needs amode
argument.Add a test and adjust implementation, so that the program replaces
with:
The implementation maybe is not beautiful, but seems to work 馃槄.
While working on this I noticed that having a
@model_validator()
(without args) in v2 produces an error. One has to provide themode
arg.I can open a separate PR for this,
but this change most likely will need a separate
visit
methodfor
ROOT_VALIDATOR_DECORATOR
,because
mode
infield_validator
can be omitted.