skillbox/server/assignments/schema/queries.py

26 lines
870 B
Python

import graphene
from graphene import relay
from graphene_django.filter import DjangoFilterConnectionField
from rest_framework.exceptions import PermissionDenied
from api.utils import get_by_id_or_slug
from assignments.models import StudentSubmission, SubmissionFeedback
from assignments.schema.types import AssignmentNode, StudentSubmissionNode, SubmissionFeedbackNode
class AssignmentsQuery(object):
assignment = relay.Node.Field(AssignmentNode)
assignments = DjangoFilterConnectionField(AssignmentNode)
class StudentSubmissionQuery(object):
student_submission = relay.Node.Field(StudentSubmissionNode)
class MyActivityQuery(object):
my_activity = DjangoFilterConnectionField(StudentSubmissionNode)
def resolve_my_activity(self, info, **kwargs):
user = info.context.user
return StudentSubmission.objects.filter(student=user)