20 lines
611 B
Python
20 lines
611 B
Python
import graphene
|
|
from graphene import relay
|
|
from wagtail.images.models import Image
|
|
from api.graphene_wagtail import generate_image_url
|
|
|
|
class ModuleInterface(relay.Node):
|
|
pk = graphene.Int()
|
|
hero_image = graphene.String(required=True)
|
|
topic = graphene.Field('books.schema.nodes.TopicNode')
|
|
|
|
@staticmethod
|
|
def resolve_pk(parent, info, **kwargs):
|
|
return parent.id
|
|
|
|
@staticmethod
|
|
def resolve_hero_image(parent, info, **kwargs):
|
|
if parent.hero_image:
|
|
image = Image.objects.get(id=parent.hero_image.id)
|
|
return generate_image_url(image, 'original')
|