Skip to content
This repository was archived by the owner on Sep 6, 2022. It is now read-only.

Use new resolvers API #31

Merged
merged 1 commit into from
Aug 1, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions examples/starwars/schema.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ class Meta:

ships = NdbConnectionField(Ship)

def resolve_ships(self, **args):
def resolve_ships(self, info, **args):
return ShipModel.query().filter(ShipModel.faction_key == self.key)


Expand All @@ -43,7 +43,7 @@ class Input:
faction = graphene.Field(Faction)

@classmethod
def mutate_and_get_payload(cls, input, context, info):
def mutate_and_get_payload(cls, info, **input):
ship_name = input.get('ship_name')
faction_id = input.get('faction_id')
faction_key = ndb.Key(FactionModel, faction_id)
Expand All @@ -58,13 +58,13 @@ class Query(graphene.ObjectType):
node = relay.Node.Field()
ships = NdbConnectionField(Ship)

def resolve_ships(self, **args):
def resolve_ships(self, info, **args):
return ShipModel.query()

def resolve_rebels(self):
def resolve_rebels(self, info):
return FactionModel.get_by_id("rebels")

def resolve_empire(self):
def resolve_empire(self, info):
return FactionModel.get_by_id("empire")


Expand Down
16 changes: 8 additions & 8 deletions graphene_gae/ndb/fields.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

from graphql_relay import to_global_id
from graphql_relay.connection.connectiontypes import Edge
from graphene import Argument, Boolean, Int, String, Field, List, NonNull, Dynamic, final_resolver
from graphene import Argument, Boolean, Int, String, Field, List, NonNull, Dynamic
from graphene.relay import Connection
from graphene.relay.connection import PageInfo, ConnectionField

Expand Down Expand Up @@ -123,8 +123,8 @@ def model(self):
return self.type._meta.node._meta.model

@staticmethod
def connection_resolver(resolver, connection, model, transform_edges, root, args, context, info):
ndb_query = resolver(root, args, context, info)
def connection_resolver(resolver, connection, model, transform_edges, root, info, **args):
ndb_query = resolver(root, info, **args)
if ndb_query is None:
ndb_query = model.query()

Expand All @@ -135,13 +135,13 @@ def connection_resolver(resolver, connection, model, transform_edges, root, args
edge_type=connection.Edge,
pageinfo_type=PageInfo,
transform_edges=transform_edges,
context=context
context=info.context
)

def get_resolver(self, parent_resolver):
return final_resolver(partial(
return partial(
self.connection_resolver, parent_resolver, self.type, self.model, self.transform_edges
))
)


class DynamicNdbKeyStringField(Dynamic):
Expand Down Expand Up @@ -206,7 +206,7 @@ def __init__(self, ndb_key_prop, graphql_type_name, *args, **kwargs):

super(NdbKeyStringField, self).__init__(_type, *args, **kwargs)

def resolve_key_to_string(self, entity, ndb=False):
def resolve_key_to_string(self, entity, info, ndb=False):
is_global_id = not ndb
key_value = self.__ndb_key_prop._get_user_value(entity)
if not key_value:
Expand Down Expand Up @@ -237,7 +237,7 @@ def __init__(self, ndb_key_prop, graphql_type, *args, **kwargs):

super(NdbKeyReferenceField, self).__init__(_type, *args, **kwargs)

def resolve_key_reference(self, entity):
def resolve_key_reference(self, entity, info):
key_value = self.__ndb_key_prop._get_user_value(entity)
if not key_value:
return None
Expand Down
4 changes: 2 additions & 2 deletions graphene_gae/ndb/types.py
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ def __init_subclass_with_meta__(cls, model=None, registry=None, skip_registry=Fa
registry.register(cls)

@classmethod
def is_type_of(cls, root, context, info):
def is_type_of(cls, root, info):
if isinstance(root, cls):
return True

Expand All @@ -125,5 +125,5 @@ def get_node(cls, urlsafe_key, *_):
return key.get()

@classmethod
def resolve_id(cls, entity):
def resolve_id(cls, entity, info):
return entity.key.urlsafe()
6 changes: 3 additions & 3 deletions tests/_ndb/test_types.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ class Meta:
class QueryRoot(graphene.ObjectType):
articles = graphene.List(ArticleType)

def resolve_articles(self):
def resolve_articles(self, info):
return Article.query()


Expand Down Expand Up @@ -126,7 +126,7 @@ class Meta:
class QueryType(graphene.ObjectType):
articles = graphene.List(ArticleType)

def resolve_articles(self):
def resolve_articles(self, info):
return Article.query()

schema = graphene.Schema(query=QueryType)
Expand All @@ -152,7 +152,7 @@ class Meta:
class QueryType(graphene.ObjectType):
articles = graphene.List(ArticleType)

def resolve_articles(self):
def resolve_articles(self, info):
return Article.query()

schema = graphene.Schema(query=QueryType)
Expand Down
4 changes: 2 additions & 2 deletions tests/_ndb/test_types_relay.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,10 +72,10 @@ class Meta:
comments = NdbConnectionField(CommentType)
readers = NdbConnectionField(ReaderType, transform_edges=transform_to_reader_edges)

def resolve_comments(self):
def resolve_comments(self, info):
return Comment.query(ancestor=self.key)

def resolve_readers(self, **args):
def resolve_readers(self, info, **args):
return ArticleReader.query().filter(ArticleReader.article_key == self.key).order(ArticleReader.key)


Expand Down
6 changes: 3 additions & 3 deletions tests/_webapp2/test_graphql_handler.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ class QueryRootType(graphene.ObjectType):
greet = graphene.Field(graphene.String, who=graphene.Argument(graphene.String))
resolver_raises = graphene.String()

def resolve_greet(self, who):
def resolve_greet(self, info, who):
return 'Hello %s!' % who

def resolve_resolver_raises(self):
def resolve_resolver_raises(self, info):
raise Exception("TEST")


Expand All @@ -31,7 +31,7 @@ class Input:
defaultGreeting = graphene.String()

@classmethod
def mutate_and_get_payload(cls, input, context, info):
def mutate_and_get_payload(cls, root, info, **input):
QueryRootType.default_greet = input.get('value')
return ChangeDefaultGreetingMutation(ok=True, defaultGreeting=QueryRootType.default_greet)

Expand Down