このガイドでは、Google Classroom API の採点関連のコードサンプルについて説明します。成績のガイドを読んで、Classroom の成績評価のコンセプトを理解してください。
生徒の提出物の成績を設定する
StudentSubmission
リソースには、成績を格納する 2 つのフィールドがあります。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 UI を使用する場合、教師はまず仮の成績を保存してからでないと、成績を割り当てることができません。割り当てられた成績を生徒に返却できます。アプリケーションは、次の 2 つの方法で生徒の課題を採点できます。
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 API では、デベロッパーがコースの全体的な成績を読み書きすることはできませんが、プログラムで計算することはできます。採点の設定に関するヘルプセンター記事では、この計算に関するヒントを紹介しています。Course
リソースには、計算に役立つ gradebookSettings
フィールドが含まれています。
総合評価を計算する場合は、遅れた課題、許可された課題、提出されていない課題を管理する際に注意すべきヒントをご確認ください。
生徒の回答のステータスを管理する
生徒の回答は、提出の取り消し、提出、返却のいずれかになります。StudentSubmission
の state フィールドは、現在の状態を示します。状態を変更するには、次のいずれかのメソッドを呼び出します。
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 アドオンのデベロッパーは、個々のアドオンの添付ファイルに成績を設定できます。また、教師が生徒の提出物を確認するときに成績が表示されるように構成することもできます。詳細については、アクティビティ タイプの添付ファイルと成績のパスバックのチュートリアルをご覧ください。