In dieser Anleitung finden Sie Codebeispiele zur Benotung für die Classroom API. Der Schwerpunkt dieses Dokuments liegt auf dem Kernprozess der Benotung in Classroom: der Verwaltung von StudentSubmission Status
und Noten.
Lesen Sie die Anleitung zu Noten, um sich mit den Benotungskonzepten in Classroom vertraut zu machen.
`StudentSubmission`-Status verwalten
StudentSubmission kann den Status „Nicht abgegeben“, „Abgegeben“ oder „Zurückgegeben“ haben. Das Feld state gibt den aktuellen Status an. Die Benotung erfolgt in der Regel, nachdem sich StudentSubmission im Status TURNED_IN befindet.
Wenn Sie den Status mit der Classroom API ändern möchten, rufen Sie eine der folgenden Methoden auf:
courses.courseWork.studentSubmissions.turnIn: Nur der Schüler oder Student, dem eineStudentSubmissiongehört, kann sie abgeben.courses.courseWork.studentSubmissions.reclaim: Nur der Schüler oder Student, dem eineStudentSubmissiongehört, kann sie zurückfordern. Die Abgabe kann nur zurückgefordert werden, wenn sie bereits abgegeben wurde.courses.courseWork.studentSubmissions.return: Nur Kursleiter im Kurs können eineStudentSubmissionzurückgeben. Die Abgabe kann nur zurückgegeben werden, wenn sie bereits vom Schüler oder Studenten abgegeben wurde.
Alle diese Methoden akzeptieren einen leeren body-Parameter, wie im folgenden Beispiel gezeigt:
Python
service.courses().courseWork().studentSubmission().turnIn(
courseId=course_id,
courseWorkId=coursework_id,
id=studentsubmission_id,
body={}).execute()
Java
Noten für Schüler-/Studentenarbeiten festlegen
Die StudentSubmission-Ressource enthält zwei Felder zum Speichern der Gesamtnote für
benotete CourseWork-Aufgaben:
draftGradeist eine vorläufige Note, die nur für Kursleiter sichtbar ist.assignedGradeist die Note, die den Schülern oder Studenten mitgeteilt wird.
Diese Felder werden mit
courses.courseWork.studentSubmissions.patch aktualisiert, wie im
folgenden Beispiel gezeigt:
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
Wenn Kursleiter mit der Classroom-UI arbeiten, können sie erst dann eine assignedGrade festlegen, wenn sie zuerst eine draftGrade gespeichert haben. Die assignedGrade kann dann an einen Schüler oder Studenten zurückgegeben werden. Ihre Anwendung kann die Aufgabe eines Schülers oder Studenten auf zwei Arten benoten:
Weisen Sie nur die
draftGradezu. Dies ist beispielsweise nützlich, wenn die Lehrkraft die Noten manuell überprüfen möchte, bevor sie sie abschließt. Schüler und Studenten können keine Notenentwürfe sehen.Weisen Sie sowohl die
draftGradeals auch dieassignedGradezu, um eine Aufgabe vollständig zu benoten.
Mit dem Argument updateMask können Sie konfigurieren, welches Feld festgelegt werden soll.
Unter Anhänge zu einer Schüler-/Studentenantwort hinzufügen finden Sie Informationen zu den Bereichen und Berechtigungen
, die zum Ändern von StudentSubmissions erforderlich sind.
Zugewiesene Noten lesen
Sie können auf alle Noten für eine bestimmte CourseWork zugreifen, indem Sie mit der
courses.courseWork.studentSubmissions.list Methode alle
entsprechenden StudentSubmissions abrufen und die entsprechenden
assignedGrade und draftGrade Felder prüfen:
Python
response = coursework.studentSubmissions().list(
courseId=course_id,
courseWorkId=coursework_id,
# optionally include `pageSize` to restrict the number of student
# submissions included in the response.
pageSize=10
).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
Unter Schüler-/Studentenantworten abrufen finden Sie Informationen zu den Bereichen und Berechtigungen, die zum Lesen von StudentSubmissions erforderlich sind.
Gesamtkursnoten bestimmen
Mit der Classroom API können Entwickler die Gesamtkursnote nicht lesen oder schreiben, aber Sie können sie programmatisch berechnen. Wenn Sie die Gesamtnote berechnen möchten, lesen Sie die Anleitung zu Noten, um wichtige Konzepte wie entschuldigte CourseWork, Benotungszeiträume und die verschiedenen Benotungssysteme zu verstehen.
Add-on-Anhänge benoten
Wenn Sie ein Entwickler von Classroom-Add-ons sind, können Sie Noten für einzelne Add-on-Anhänge festlegen und konfigurieren, dass die Note für Kursleiter sichtbar ist, wenn sie die Arbeit von Schülern oder Studenten überprüfen. Weitere Informationen finden Sie in den Schritt-für-Schritt-Anleitungen Anhänge vom Typ „Aktivität“ und Notenrückgabe.
Bewertungsschema-Noten
StudentSubmissions haben Felder, die auf
Rubrics basierende Noten darstellen:
draftRubricGradeist eine vorläufige Reihe vonCriterion-Noten, die nur für Kursleiter sichtbar sind.assignedRubricGradeist die Reihe vonCriterion-Noten, die den Schülern oder Studenten mitgeteilt wird.
Bewertungsschema-Noten können nicht mit der Google Classroom API festgelegt, aber gelesen werden. Weitere Informationen finden Sie in der Anleitung zu Bewertungsschemata und den Einschränkungen.