Ten przewodnik zawiera przykłady kodu związanego z ocenianiem za pomocą interfejsu Google Classroom API. Aby zapoznać się z pojęciami dotyczącymi oceniania w Classroom, przeczytaj przewodnik po ocenach.
Ustawianie ocen za projekty uczniów
Zasób StudentSubmission
ma 2 pola do przechowywania ocen: assignedGrade
(ocena zgłaszana uczniom) i draftGrade
(wstępna ocena widoczna tylko dla nauczycieli). Te pola są aktualizowane za pomocą 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
Podczas pracy z interfejsem Classroom nauczyciele nie mogą wystawiać ocen, dopóki nie zapiszą najpierw oceny roboczej. Przypisaną ocenę można następnie zwrócić uczniowi. Aplikacja może ocenić projekt ucznia na 2 sposoby:
Przypisz tylko
draftGrade
. Jest to przydatne na przykład wtedy, gdy nauczyciel chce sprawdzić oceny ręcznie przed ich ostatecznym zatwierdzeniem. Uczniowie nie widzą ocen roboczych.Przypisz zarówno
draftGrade
, jak iassignedGrade
, aby ocenić projekt.
Czytanie przypisanych ocen
Aby wyświetlić wszystkie oceny dotyczące konkretnego elementu zajęć, sprawdź obiekt odpowiedzi metody 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
Określanie ogólnych ocen z zajęć
Interfejs Classroom API nie pozwala deweloperom odczytywać ani zapisywać ogólnej oceny z zajęć, ale można ją obliczyć programowo. Wskazówki dotyczące tego obliczenia znajdziesz w tym artykule w Centrum pomocy. Zasób Course
zawiera pole gradebookSettings
, które może Ci pomóc w przeprowadzeniu obliczeń.
Jeśli chcesz obliczyć ogólną ocenę, zapoznaj się z kilkoma wskazówkami, które pomogą Ci zarządzać opóźnionymi, usprawiedliwionymi i nieobecnymi pracami.
Zarządzanie stanem odpowiedzi uczniów
Odpowiedź ucznia może zostać wycofana, oddana lub zwrócona. Pole stanu w StudentSubmission
wskazuje bieżący stan. Aby zmienić stan, użyj jednej z tych metod:
courses.courseWork.studentSubmissions.turnIn
: tylko uczeń, który jest właścicielem projektuStudentSubmission
, może oddać zadanie.courses.courseWork.studentSubmissions.reclaim
: tylko uczeń, który posiadaStudentSubmission
, może odzyskać ten element. Możesz odzyskać zgłoszenie tylko wtedy, gdy zostało ono już przesłane.courses.courseWork.studentSubmissions.return
: tylko nauczyciele na zajęciach mogą zwrócićStudentSubmission
. Przesłany projekt można zwrócić tylko wtedy, gdy został już złożony przez ucznia.
Wszystkie te metody akceptują pusty parametr body
, np.
Python
service.courses().courseWork().studentSubmission().turnIn(
courseId=course_id,
courseWorkId=coursework_id,
id=studentsubmission_id,
body={}).execute()
Java
Załączniki dodatku do oceniania
Jeśli jesteś deweloperem dodatków do Classroom, możesz ustawiać oceny dla poszczególnych załączników dodatku i skonfigurować ocenę tak, aby była widoczna dla nauczycieli podczas sprawdzania prac uczniów. Więcej informacji znajdziesz w instrukcjach dotyczących załączników typu Aktywność i przekazywania ocen.