26 lines
870 B
Python
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)
|