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