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ữuStudentSubmission
mới có thể nộp bài.courses.courseWork.studentSubmissions.reclaim
: Chỉ học viên sở hữuStudentSubmission
mớ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:
draftGrade
là điểm dự kiến và chỉ giáo viên mới nhìn thấy.assignedGrade
là đ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ả
draftGrade
và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
:
draftRubricGrade
là một bộ điểm sốCriterion
dự kiến mà chỉ giáo viên mới có thể xem.assignedRubricGrade
là 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.