Hướng dẫn này cung cấp các ví dụ về mã liên quan đến việc chấm điểm cho Classroom API. Tài liệu này tập trung vào quy trình chấm điểm cốt lõi của Lớp học: quản lý trạng thái StudentSubmission và điểm số.
Đọc Hướng dẫn về điểm số để làm quen với các khái niệm về chấm điểm trong Lớp học.
Quản lý trạng thái StudentSubmission
StudentSubmission có thể được huỷ nộp, nộp hoặc trả lại. Trường state cho biết trạng thái hiện tại. Việc chấm điểm thường được thực hiện sau khi StudentSubmission ở trạng thái TURNED_IN.
Để thay đổi trạng thái bằng API Lớp học, hãy gọi một trong các phương thức sau:
courses.courseWork.studentSubmissions.turnIn: Chỉ học viên sở hữuStudentSubmissionmới có thể nộp bài.courses.courseWork.studentSubmissions.reclaim: Chỉ học viên sở hữuStudentSubmissionmới có thể yêu cầu cấp lại. Bạn chỉ có thể lấy lại bài tập đã nộp.courses.courseWork.studentSubmissions.return: Chỉ giáo viên trong khoá học mới có thể trả lạiStudentSubmission. Bạn chỉ có thể trả lại bài tập đã nộp nếu học viên đã nộp bài.
Tất cả các phương thức này đều chấp nhận một tham số body trống, như minh hoạ trong ví dụ sau:
Python
service.courses().courseWork().studentSubmission().turnIn(
courseId=course_id,
courseWorkId=coursework_id,
id=studentsubmission_id,
body={}).execute()
Java
Chấm điểm cho bài nộp của học viên
Tài nguyên StudentSubmission có 2 trường để lưu trữ tổng điểm cho bài tập CourseWork được chấm điểm:
draftGradelà điểm dự kiến và chỉ giáo viên mới nhìn thấy.assignedGradelà điểm được báo cáo cho học viên.
Các trường này được cập nhật bằng courses.courseWork.studentSubmissions.patch, như minh hoạ trong ví dụ sau:
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
Khi làm việc với giao diện người dùng Lớp học, giáo viên không thể đặt assignedGrade cho đến khi họ lưu draftGrade. Sau đó, bạn có thể trả lại assignedGrade cho học viên. Ứng dụng của bạn có thể chấm điểm bài tập của học viên theo một trong hai cách:
Chỉ định
draftGrade. Ví dụ: điều này hữu ích khi giáo viên muốn xem xét điểm theo cách thủ công trước khi hoàn tất. Học viên không thể xem điểm nháp.Chỉ định cả
draftGradevàassignedGradeđể chấm điểm đầy đủ cho bài tập.
Dùng đối số updateMask để định cấu hình trường cần đặt.
Xem phần Thêm tệp đính kèm vào câu trả lời của học viên để tìm hiểu các phạm vi và quyền cần thiết để sửa đổi StudentSubmissions.
Đọc điểm được giao
Bạn có thể truy cập vào tất cả điểm số cho một CourseWork cụ thể bằng cách sử dụng phương thức courses.courseWork.studentSubmissions.list để truy xuất tất cả StudentSubmissions tương ứng và kiểm tra các trường assignedGrade và draftGrade thích hợp:
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
Hãy xem phần Truy xuất câu trả lời của học viên để tìm hiểu các phạm vi và quyền cần thiết để đọc StudentSubmissions.
Xác định tổng điểm của khoá học
Classroom API không cho phép nhà phát triển đọc hoặc ghi điểm tổng thể của khoá học, nhưng bạn có thể tính điểm này theo phương thức lập trình. Nếu bạn muốn tính điểm tổng kết, hãy đọc Hướng dẫn về điểm số để hiểu các khái niệm quan trọng như CourseWork được miễn, khoảng thời gian chấm điểm và các hệ thống chấm điểm khác nhau.
Tệp đính kèm của tiện ích bổ sung chấm điểm
Nếu là nhà phát triển tiện ích bổ sung Lớp học, bạn có thể đặt điểm cho từng tệp đính kèm tiện ích bổ sung và định cấu hình để giáo viên có thể xem điểm khi họ xem xét bài tập của học viên. Hãy xem hướng dẫn về Tệp đính kèm theo loại hoạt động và Tính năng trả điểm để biết thêm thông tin.
Điểm theo tiêu chí chấm điểm
StudentSubmissions có các trường đại diện cho điểm số được đưa ra dựa trên Rubrics:
draftRubricGradelà một bộ điểm sốCriteriondự kiến mà chỉ giáo viên mới có thể xem.assignedRubricGradelà tập hợp điểm sốCriterionđược báo cáo cho học viên.
Bạn không thể đặt điểm trong bảng điểm bằng Google Classroom API, nhưng có thể đọc điểm. Hãy xem hướng dẫn về bảng điểm và các điểm hạn chế để tìm hiểu thêm.