diff --git a/graphql/type/definition.py b/graphql/type/definition.py index adf811c3..65e3a90e 100644 --- a/graphql/type/definition.py +++ b/graphql/type/definition.py @@ -41,8 +41,7 @@ def is_output_type(type): def is_leaf_type(type): - named_type = get_named_type(type) - return isinstance(named_type, ( + return isinstance(type, ( GraphQLScalarType, GraphQLEnumType, )) diff --git a/graphql/validation/rules/scalar_leafs.py b/graphql/validation/rules/scalar_leafs.py index 531a1d23..f03efbc7 100644 --- a/graphql/validation/rules/scalar_leafs.py +++ b/graphql/validation/rules/scalar_leafs.py @@ -1,5 +1,5 @@ from ...error import GraphQLError -from ...type.definition import is_leaf_type +from ...type.definition import get_named_type, is_leaf_type from .base import ValidationRule @@ -11,7 +11,7 @@ def enter_Field(self, node, key, parent, path, ancestors): if not type: return - if is_leaf_type(type): + if is_leaf_type(get_named_type(type)): if node.selection_set: self.context.report_error(GraphQLError( self.no_subselection_allowed_message(node.name.value, type),