Skip to content

Commit d16d225

Browse files
Support Default Field Resolver
Support field resolver without redefine graphene field in PydanticObjectType
1 parent c3c2eed commit d16d225

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

graphene_pydantic/converters.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,16 @@ def convert_pydantic_field(
135135
field_type = field_kwargs.pop("type", field_kwargs.pop("type_", None))
136136
if field_type is None:
137137
raise ValueError("No field type could be determined.")
138+
139+
resolver_function = getattr(parent_type,
140+
"resolve_" + field.name,
141+
None)
142+
if resolver_function and callable(resolver_function):
143+
field_resolver = resolver_function
144+
else:
145+
field_resolver = get_attr_resolver(field.name)
138146

139-
return Field(field_type, resolver=get_attr_resolver(field.name), **field_kwargs)
140-
147+
return Field(field_type, resolver=field_resolver, **field_kwargs)
141148

142149
def convert_pydantic_type(
143150
type_: T.Type,

0 commit comments

Comments
 (0)