class StudentGroup(DjangoObjectType): msl_group = graphene.Field(MSLStudentGroup) group_id = graphene.Int() awards = graphene.List(AwardPeriod) class Meta: model = models.StudentGroup interfaces = (graphene.Node, ) def resolve_msl_group(self, info): try: return self.msl_group except models.MSLStudentGroup.DoesNotExist: return None def resolve_group_id(self, info): return self.pk def resolve_awards(self, info): x = models.GroupAwarded.objects.select_related('award').filter( group=self) return models.AwardPeriod.objects.select_related( 'authority').prefetch_related( Prefetch( 'awarded', queryset=x, to_attr='awards')).filter(awarded__group=self).distinct() StudentGroup.Connection = create_connection(StudentGroup)
body_html = graphene.String() event_id = graphene.Int() children = graphene.List(lambda: Event) parent = graphene.Field(lambda: Event) msl_event_id = graphene.Int() class Meta: model = models.Event interfaces = (graphene.Node, ) def resolve_body_html(self, info): return expand_db_html(self.body) def resolve_event_id(self, info): return self.pk def resolve_msl_event_id(self, info): return self.get_msl_event_id() def resolve_student_group(self, info): return self.student_group def resolve_children(self, info): return self.children.all() def resolve_parent(self, info): return self.parent Event.Connection = create_connection(Event)
def resolve_name(self, info): return self.label.name class Meta: model = models.ImageLabelThrough interfaces = (graphene.Node, ) class Image(DjangoObjectType): resource = graphene.String() media_id = graphene.Int() labels = DjangoConnectionField(ImageLabel) def resolve_resource(self, info): return self.file.name def resolve_media_id(self, info): return self.pk def resolve_labels(self, info): return models.ImageLabelThrough.objects.select_related('label') \ .filter(image=self).order_by('-confidence') class Meta: model = models.MatteImage interfaces = (graphene.Node, ) Image.Connection = create_connection(Image)
model = models.Listing interfaces = (graphene.Node, ) filter_fields = ['section', 'book_title', 'book_author'] def resolve_pk(self, info): return self.pk def resolve_image(self, info): return self.featured_image() def resolve_listing_user(self, info): return self.listing_user def resolve_contact_details(self, info): if not info.context.user.is_authenticated or not self.can_see_contact_details(info.context.user): return None else: return self.contact_details MarketListing.connection = create_connection(MarketListing) class MarketListingSection(DjangoObjectType): class Meta: model = models.ListingSection pk = graphene.Int() def resolve_pk(self, info): return self.pk