mirror of
https://github.com/kennethreitz/pydantic.git
synced 2026-06-05 23:00:18 +00:00
Clarify documentation and error message about keep_untouched (#926)
* Clarify keep_untouched documentation (#924) * Clarify error message for custom types (#924) * Fix tests for changed error message (#924) * fix formatting * remove erroneous error message and add change
This commit is contained in:
@@ -0,0 +1 @@
|
||||
Clarify usage of `remove_untouched`, improve error message for types with no validators.
|
||||
@@ -62,8 +62,8 @@ Options:
|
||||
: a callable that takes a field name and returns an alias for it
|
||||
|
||||
**`keep_untouched`**
|
||||
: a tuple of types (e.g. descriptors) that should not be changed during model creation and will not be
|
||||
included in the model schemas
|
||||
: a tuple of types (e.g. descriptors) for a model's default values that should not be changed during model creation and will
|
||||
not be included in the model schemas. **Note**: this means that attributes on the model with *defaults of this type*, not *annotations of this type*, will be left alone.
|
||||
|
||||
**`schema_extra`**
|
||||
: a `dict` used to extend/update the generated JSON Schema
|
||||
|
||||
@@ -568,9 +568,7 @@ def find_validators( # noqa: C901 (ignore complexity)
|
||||
if config.arbitrary_types_allowed:
|
||||
yield make_arbitrary_type_validator(type_)
|
||||
else:
|
||||
raise RuntimeError(
|
||||
f'no validator found for {type_} see `keep_untouched` or `arbitrary_types_allowed` in Config'
|
||||
)
|
||||
raise RuntimeError(f'no validator found for {type_}, see `arbitrary_types_allowed` in Config')
|
||||
|
||||
|
||||
def _find_supertype(type_: AnyType) -> Optional[AnyType]:
|
||||
|
||||
+1
-1
@@ -953,7 +953,7 @@ def test_custom_types_fail_without_keep_untouched():
|
||||
|
||||
assert str(e.value) == (
|
||||
"no validator found for <class 'tests.test_main.test_custom_types_fail_without_keep_untouched.<locals>."
|
||||
"_ClassPropertyDescriptor'> see `keep_untouched` or `arbitrary_types_allowed` in Config"
|
||||
"_ClassPropertyDescriptor'>, see `arbitrary_types_allowed` in Config"
|
||||
)
|
||||
|
||||
class Model(BaseModel):
|
||||
|
||||
Reference in New Issue
Block a user