Bu kılavuzda, Google Classroom API için notlandırmayla ilgili kod örnekleri verilmiştir. Classroom'daki notlandırma kavramlarıyla ilgili bilgi edinmek için Notlar kılavuzunu okuyun.
Öğrenci gönderimleri için not belirleme
StudentSubmission
kaynağında notları saklamak için iki alan bulunur: Öğrencilere bildirilen not olan assignedGrade
ve yalnızca öğretmenler tarafından görülebilen geçici not olan draftGrade
. Bu alanlar courses.courseWork.studentSubmissions.patch
kullanılarak güncellenir.
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 kullanıcı arayüzünde çalışırken öğretmenler, önce bir taslak not kaydetmeden not atayamaz. Atanan not daha sonra öğrenciye iade edilebilir. Uygulamanız, bir öğrencinin ödevine iki şekilde not verebilir:
Yalnızca
draftGrade
değerini atayın. Bu özellik, örneğin, öğretmenin notları kesinleştirmeden önce manuel olarak incelemesine olanak tanır. Öğrenciler taslak notları göremez.Bir ödeve tam not vermek için hem
draftGrade
hem deassignedGrade
'ü atayın.
Atanan notları okuma
courses.courseWork.studentSubmissions.list
yönteminin yanıt nesnesini keşfederek belirli bir kurs öğesinin tüm notlarını listeleyebilirsiniz:
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
Genel kurs notlarını belirleme
Classroom API, geliştiricilerin genel ders notunu okumasına veya yazmasına izin vermez ancak bunu programlı olarak hesaplayabilirsiniz. Notlandırmayı ayarlama yardım merkezi makalesinde bu hesaplama hakkında ipuçları verilmektedir. Course
kaynağı, hesaplamaları yapmanıza yardımcı olabilecek gradebookSettings
alanını içerir.
Genel notu hesaplamak istiyorsanız geç, mazeretli ve eksik olan dersleri yönetirken dikkat etmeniz gereken ipuçlarını okuyun.
Öğrenci yanıt durumunu yönetme
Öğrenci yanıtları gönderilmeyebilir, teslim edilebilir veya geri verilebilir. StudentSubmission
içindeki durum alanı, mevcut durumu gösterir. Durumu değiştirmek için aşağıdaki yöntemlerden birini çağırın:
courses.courseWork.studentSubmissions.turnIn
: YalnızcaStudentSubmission
sahibi olan öğrenci teslim edebilir.courses.courseWork.studentSubmissions.reclaim
: YalnızcaStudentSubmission
sahibi olan öğrenci bu öğeyi geri alabilir. Gönderim yalnızca daha önce teslim edilmişse geri alınabilir.courses.courseWork.studentSubmissions.return
: Yalnızca kurstaki öğretmenlerStudentSubmission
verebilir. Gönderim yalnızca öğrenci tarafından teslim edilmişse iade edilebilir.
Bu yöntemlerin tümü boş bir body
parametresi kabul eder. Örneğin:
Python
service.courses().courseWork().studentSubmission().turnIn(
courseId=course_id,
courseWorkId=coursework_id,
id=studentsubmission_id,
body={}).execute()
Java
Not eklentisi ekleri
Classroom eklentisi geliştiriciyseniz eklenti ekleri için ayrı ayrı notlar belirleyebilir ve notu, öğretmenler öğrenci çalışmalarını incelerken görebilecekleri şekilde yapılandırabilirsiniz. Daha fazla bilgi için Etkinlik türü ekleri ve Not aktarma adım adım açıklamalı kılavuzlarına bakın.