Merge pull request #20 from morgante/pk_id

Fix ID lookup to handle cases where 'id' is not the primary key of the Django model
This commit is contained in:
Syrus Akbary 2016-10-15 15:56:33 -07:00 committed by GitHub
commit 1bf5d602ce

View File

@ -98,6 +98,9 @@ class DjangoObjectTypeMeta(ObjectTypeMeta):
class DjangoObjectType(six.with_metaclass(DjangoObjectTypeMeta, ObjectType)): class DjangoObjectType(six.with_metaclass(DjangoObjectTypeMeta, ObjectType)):
def resolve_id(self, args, context, info):
return self.pk
@classmethod @classmethod
def is_type_of(cls, root, context, info): def is_type_of(cls, root, context, info):
if isinstance(root, cls): if isinstance(root, cls):
@ -112,6 +115,6 @@ class DjangoObjectType(six.with_metaclass(DjangoObjectTypeMeta, ObjectType)):
@classmethod @classmethod
def get_node(cls, id, context, info): def get_node(cls, id, context, info):
try: try:
return cls._meta.model.objects.get(id=id) return cls._meta.model.objects.get(pk=id)
except cls._meta.model.DoesNotExist: except cls._meta.model.DoesNotExist:
return None return None