ग्रेड सेट करना और अपडेट करना

इस गाइड में, Google Classroom API के लिए ग्रेड से जुड़े कोड के उदाहरण दिए गए हैं. Classroom में ग्रेड देने के कॉन्सेप्ट के बारे में जानने के लिए, ग्रेड की गाइड पढ़ें.

छात्र-छात्राओं के सबमिशन के लिए ग्रेड सेट करना

StudentSubmission संसाधन में ग्रेड सेव करने के लिए दो फ़ील्ड होते हैं: assignedGrade, जो छात्र-छात्राओं को बताया गया ग्रेड होता है और draftGrade, जो सिर्फ़ शिक्षकों को दिखने वाला अनुमानित ग्रेड होता है. इन फ़ील्ड को courses.courseWork.studentSubmissions.patch का इस्तेमाल करके अपडेट किया जाता है.

Python

studentSubmission = {
  'assignedGrade': 99,
  'draftGrade': 80
}

service.courses().courseWork().studentSubmissions().patch(
    courseId=course_id,
    courseWorkId=coursework_id,
    id=studentsubmission_id,
    updateMask='assignedGrade,draftGrade',
    body=studentSubmission).execute()

Java

classroom/snippets/src/main/java/PatchStudentSubmission.java
StudentSubmission studentSubmission = null;
try {
  // Updating the draftGrade and assignedGrade fields for the specific student submission.
  StudentSubmission content =
      service
          .courses()
          .courseWork()
          .studentSubmissions()
          .get(courseId, courseWorkId, id)
          .execute();
  content.setAssignedGrade(90.00);
  content.setDraftGrade(80.00);

  // The updated studentSubmission object is returned with the new draftGrade and assignedGrade.
  studentSubmission =
      service
          .courses()
          .courseWork()
          .studentSubmissions()
          .patch(courseId, courseWorkId, id, content)
          .set("updateMask", "draftGrade,assignedGrade")
          .execute();

  /* Prints the updated student submission. */
  System.out.printf(
      "Updated student submission draft grade (%s) and assigned grade (%s).\n",
      studentSubmission.getDraftGrade(), studentSubmission.getAssignedGrade());
} catch (GoogleJsonResponseException e) {
  // TODO (developer) - handle error appropriately
  GoogleJsonError error = e.getDetails();
  if (error.getCode() == 404) {
    System.out.printf(
        "The courseId (%s), courseWorkId (%s), or studentSubmissionId (%s) does "
            + "not exist.\n",
        courseId, courseWorkId, id);
  } else {
    throw e;
  }
} catch (Exception e) {
  throw e;
}
return studentSubmission;

Classroom के यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करते समय, शिक्षक तब तक ग्रेड असाइन नहीं कर सकते, जब तक कि वे ड्राफ़्ट के तौर पर ग्रेड सेव नहीं कर लेते. इसके बाद, असाइन किए गए ग्रेड को छात्र/छात्रा को वापस दिया जा सकता है. आपका ऐप्लिकेशन, छात्र/छात्रा के असाइनमेंट को इनमें से किसी एक तरीके से ग्रेड दे सकता है:

  • सिर्फ़ draftGrade असाइन करें. उदाहरण के लिए, यह सुविधा शिक्षक को ग्रेड तय करने से पहले, उन्हें मैन्युअल तरीके से समीक्षा करने में मदद करती है. छात्र-छात्राओं को ग्रेड का ड्राफ़्ट नहीं दिखता.

  • किसी असाइनमेंट को पूरा ग्रेड देने के लिए, draftGrade और assignedGrade, दोनों को असाइन करें.

असाइन किए गए ग्रेड देखना

किसी खास कोर्सवर्क आइटम के लिए सभी ग्रेड की सूची देखने के लिए, courses.courseWork.studentSubmissions.list मेथड के रिस्पॉन्स ऑब्जेक्ट को एक्सप्लोर करें:

Python

response = coursework.studentSubmissions().list(
    courseId=course_id,
    courseWorkId=coursework_id,
    pageSize=10 # optionally include `pageSize` to restrict the number of student submissions included in the response.
).execute()
submissions.extend(response.get('studentSubmissions', []))

if not submissions:
    print('No student submissions found.')

print('Student Submissions:')

for submission in submissions:
    print(f"Submitted at:"
          f"{(submission.get('userId'), submission.get('assignedGrade'))}")

Java

classroom/snippets/src/main/java/ListStudentSubmissions.java
  ListStudentSubmissionsResponse response =
      service
          .courses()
          .courseWork()
          .studentSubmissions()
          .list(courseId, courseWorkId)
          .setPageToken(pageToken)
          .execute();

  /* Ensure that the response is not null before retrieving data from it to avoid errors. */
  if (response.getStudentSubmissions() != null) {
    studentSubmissions.addAll(response.getStudentSubmissions());
    pageToken = response.getNextPageToken();
  }
} while (pageToken != null);

if (studentSubmissions.isEmpty()) {
  System.out.println("No student submissions found.");
} else {
  for (StudentSubmission submission : studentSubmissions) {
    System.out.printf(
        "User ID %s, Assigned grade: %s\n",
        submission.getUserId(), submission.getAssignedGrade());
  }
}

कोर्स के कुल ग्रेड तय करना

Classroom API की मदद से, डेवलपर को कोर्स के कुल ग्रेड को पढ़ने या उसमें बदलाव करने की अनुमति नहीं है. हालांकि, प्रोग्राम के हिसाब से इसका हिसाब लगाया जा सकता है. ग्रेडिंग सेट अप करने के बारे में सहायता केंद्र का लेख पढ़कर, इस हिसाब लगाने के बारे में सलाह पाएं. Course संसाधन में gradebookSettings फ़ील्ड शामिल होता है. इसकी मदद से, कैलकुलेशन किए जा सकते हैं.

अगर आपको पूरे ग्रेड का हिसाब लगाना है, तो कुछ पॉइंटर पढ़ें. इससे आपको पता चलेगा कि देर से सबमिट किए गए, छूट वाले, और मौजूद न होने वाले कोर्सवर्क को मैनेज करते समय क्या करना चाहिए.

छात्र/छात्रा के जवाब की स्थिति मैनेज करना

छात्र/छात्रा के जवाब को सबमिट नहीं किया जा सकता, उसे सबमिट किया जा सकता है या उसे वापस किया जा सकता है. StudentSubmission में मौजूद स्टेटस फ़ील्ड से, मौजूदा स्टेटस का पता चलता है. स्टेटस बदलने के लिए, इनमें से किसी एक तरीके का इस्तेमाल करें:

  • courses.courseWork.studentSubmissions.turnIn: सिर्फ़ वह छात्र/छात्रा ही StudentSubmission सबमिट कर सकता है जिसके पास उसका मालिकाना हक है.
  • courses.courseWork.studentSubmissions.reclaim: सिर्फ़ वह छात्र StudentSubmission पर फिर से दावा कर सकता है जिसके पास उसका मालिकाना हक है. सबमिशन को सिर्फ़ तब वापस पाया जा सकता है, जब उसे पहले ही सबमिट किया जा चुका हो.
  • courses.courseWork.studentSubmissions.return: कोर्स में शामिल शिक्षक ही StudentSubmission को वापस कर सकते हैं. सबमिशन को सिर्फ़ तब वापस किया जा सकता है, जब छात्र/छात्रा ने उसे पहले ही सबमिट कर दिया हो.

ये सभी तरीके, खाली body पैरामीटर स्वीकार करते हैं. उदाहरण के लिए:

Python

service.courses().courseWork().studentSubmission().turnIn(
    courseId=course_id,
    courseWorkId=coursework_id,
    id=studentsubmission_id,
    body={}).execute()

Java

classroom/snippets/src/main/java/ReturnStudentSubmission.java
try {
  service
      .courses()
      .courseWork()
      .studentSubmissions()
      .classroomReturn(courseId, courseWorkId, id, null)
      .execute();
} catch (GoogleJsonResponseException e) {
  // TODO (developer) - handle error appropriately
  GoogleJsonError error = e.getDetails();
  if (error.getCode() == 404) {
    System.out.printf(
        "The courseId (%s), courseWorkId (%s), or studentSubmissionId (%s) does "
            + "not exist.\n",
        courseId, courseWorkId, id);
  } else {
    throw e;
  }
} catch (Exception e) {
  throw e;
}

ग्रेड ऐड-ऑन के अटैचमेंट

अगर आप Classroom के ऐड-ऑन डेवलपर हैं, तो आपके पास अलग-अलग ऐड-ऑन अटैचमेंट के लिए ग्रेड सेट करने का विकल्प होता है. साथ ही, ग्रेड को कॉन्फ़िगर करके, यह तय किया जा सकता है कि छात्र-छात्राओं के काम की समीक्षा करते समय शिक्षकों को ग्रेड दिखे या नहीं. ज़्यादा जानकारी के लिए, गतिविधि के टाइप के अटैचमेंट और ग्रेड पासबैक के बारे में जानकारी देने वाले वॉकथ्रू देखें.