คู่มือนี้มีตัวอย่างโค้ดที่เกี่ยวข้องกับการให้คะแนนสำหรับ 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
เมื่อใช้ UI ของ Classroom ครูจะกำหนดคะแนนไม่ได้จนกว่าจะบันทึกคะแนนฉบับร่างก่อน จากนั้นคุณก็สามารถส่งคะแนนที่มอบหมายคืนให้กับนักเรียนได้ แอปพลิเคชันสามารถให้คะแนนงานของนักเรียนได้ 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
ระบุสถานะปัจจุบัน หากต้องการเปลี่ยนสถานะ ให้เรียกใช้วิธีการใดวิธีการหนึ่งต่อไปนี้
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 คุณจะกำหนดคะแนนสำหรับไฟล์แนบของส่วนเสริมแต่ละรายการและกำหนดค่าคะแนนให้ครูมองเห็นได้เมื่อตรวจสอบงานของนักเรียน ดูข้อมูลเพิ่มเติมได้ในคำแนะนำไฟล์แนบประเภทกิจกรรมและการส่งคะแนนคืน