Dies ist die sechste Schritt-für-Schritt-Anleitung für Classroom-Add-ons. Schritt-für-Schritt-Anleitung.
In dieser Schritt-für-Schritt-Anleitung ändern Sie das Beispiel aus dem vorherigen Schritt um einen benoteten Anhang des Aktivitätstyps zu erstellen. Außerdem geben Sie eine Note zurück. die in der Note der Lehrkraft angezeigt wird, programmatisch in Google Classroom. als Notenentwurf angesehen.
Diese Schritt-für-Schritt-Anleitung unterscheidet sich geringfügig von anderen in der Reihe, da es mehrere zwei mögliche Ansätze für die Notenrückgabe an Google Classroom: Beide haben unterschiedliche Auswirkungen auf Entwickler und Nutzer Erfahrungen berücksichtigen, wenn Sie das Classroom-Add-on entwerfen. Weitere Informationen finden Sie auf der Seite Mit Anhängen interagieren. Implementierungsoptionen.
Die Benotungsfunktionen in der API sind optional. Sie können mit einen beliebigen Anhang vom Typ „Aktivität“.
Im Verlauf dieser Schritt-für-Schritt-Anleitung führen Sie die folgenden Schritte aus:
- Ändern Sie die vorherigen Anfragen zum Erstellen von Anhängen an den Classroom API, um auch die maximale Punktzahl für den Anhang festzulegen.
- Benoten Sie die abgegebene Aufgabe des Schülers/Studenten programmatisch und legen Sie die Notenzähler.
- Implementieren Sie zwei Ansätze, um die Note Classroom mit den Anmeldedaten einer Lehrkraft, die als angemeldeter oder offline angemeldet ist
Sobald Sie fertig sind, erscheinen die Noten im Classroom-Notenbuch nach der Rücksendungsverhalten ausgelöst. Der genaue Moment, in dem dies geschieht, des Implementierungsansatzes.
Verwenden Sie für dieses Beispiel die Aktivität aus dem vorherigen Schritt-für-Schritt-Anleitung, bei der einem Schüler ein Bild einer berühmten Sehenswürdigkeit gezeigt wird. aufgefordert, seinen Namen einzugeben. Weisen Sie dem Anhang vollständige Markierungen zu, wenn der Schüler/Student den richtigen Namen eingibt, andernfalls Null.
Informationen zur Benotungsfunktion der Classroom Add-ons API
Mit dem Add-on können Sie sowohl den Notenzähler als auch die maximale Punktzahl für ein
Anhang. Diese werden jeweils mit pointsEarned
und maxPoints
festgelegt.
in der API verwenden. Auf einer Karte für Anhänge in der Classroom-Benutzeroberfläche wird
maxPoints
-Wert, wenn er festgelegt wurde.
Abbildung 1. Die Benutzeroberfläche zur Aufgabenerstellung mit drei Add-on-Anhangskarten, die
maxPoints
festgelegt.
Mit der Classroom Add-ons API können Sie Einstellungen
die Punktzahl für die Noten für den Anhang. Diese sind nicht mit der
Aufgabe. Die Noteneinstellungen für die Aufgabe richten sich jedoch nach den
Noteneinstellungen für Anhänge des Anhangs mit aktiviertem Label Notensynchronisierung
auf der Karte mit Anhang. Wenn das Symbol „Notensynchronisierung“ Anhangssätze pointsEarned
für ein
abgegebenen Aufgaben des Schülers/Studenten wird auch der Notenentwurf des Schülers/Studenten für die Aufgabe festgelegt.
Normalerweise ist der erste Anhang, der der Aufgabe hinzugefügt wurde,
maxPoints
erhält die Notensynchronisierung . Siehe UI für die Aufgabenerstellung
Beispiel in Abbildung 1 für die „Notensynchronisierung“ . Beachten Sie, dass
„Anhang 1“ die Karte „Notensynchronisierung“ und dass die Aufgabe benotet wird,
im roten Feld wurde auf 50 Punkte aktualisiert. In Abbildung 1
zeigt drei Anhangskarten, nur eine hat die Notensynchronisierung . Dies ist
Eine Schlüsseleinschränkung der aktuellen Implementierung: Nur ein Anhang kann einen
„Notensynchronisierung“ -Label.
Wenn es mehrere Anhänge gibt, für die maxPoints
festgelegt wurde, wird der
Anhang mit „Notensynchronisierung“ Die Notensynchronisierung wird nicht aktiviert. auf einer der
verbleibende Anhänge. Durch Hinzufügen eines weiteren Anhangs, mit dem maxPoints
festgelegt wird,
Notensynchronisierung des neuen Anhangs. Die maximale Note für eine Aufgabe wird entsprechend angepasst.
Übereinstimmung. Es gibt keinen Mechanismus, um programmatisch zu sehen, welcher Anhang den
„Noten synchronisieren“ oder um zu sehen, wie viele Anhänge eine
Aufgabe hat.
Maximale Note eines Anhangs festlegen
In diesem Abschnitt wird beschrieben, wie Sie die Nennator-Note für die Note eines Anhangs festlegen. das
ist die maximal mögliche Punktzahl, die alle Schüler
Einreichungen. Legen Sie dazu den Wert maxPoints
des Anhangs fest.
Es ist nur eine geringfügige Änderung an der bestehenden Implementierung erforderlich,
die Benotungsfunktionen nutzen. Fügen Sie beim Erstellen eines Anhangs den Wert maxPoints
in
dem gleichen AddOnAttachment
-Objekt, das studentWorkReviewUri
,
teacherViewUri
und andere Anhangsfelder.
Beachten Sie, dass die Standardhöchstpunktzahl für neue Aufgaben 100 beträgt. Wir empfehlen
maxPoints
auf einen anderen Wert als 100 setzen, damit Sie überprüfen können,
Noten richtig festgelegt werden. Legen Sie zur Veranschaulichung maxPoints
auf 50 fest:
Python
Fügen Sie beim Erstellen des attachment
-Objekts das Feld maxPoints
hinzu,
bevor eine CREATE
-Anfrage an den
courses.courseWork.addOnAttachments
-Endpunkt. Diese finden Sie in der
webapp/attachment_routes.py
, wenn Sie unser Beispiel verwenden.
attachment = {
# Specifies the route for a teacher user.
"teacherViewUri": {
"uri":
flask.url_for(
"load_activity_attachment",
_scheme='https',
_external=True),
},
# Specifies the route for a student user.
"studentViewUri": {
"uri":
flask.url_for(
"load_activity_attachment",
_scheme='https',
_external=True)
},
# Specifies the route for a teacher user when the attachment is
# loaded in the Classroom grading view.
"studentWorkReviewUri": {
"uri":
flask.url_for(
"view_submission", _scheme='https', _external=True)
},
# Sets the maximum points that a student can earn for this activity.
# This is the denominator in a fractional representation of a grade.
"maxPoints": 50,
# The title of the attachment.
"title": f"Attachment {attachment_count}",
}
Für diese Demonstration speichern Sie den Wert maxPoints
auch in
Ihre lokale Anhangsdatenbank; So ist kein zusätzlicher API-Aufruf erforderlich.
Aufgaben von Schülern oder Studenten später benoten. Es ist jedoch möglich, dass
die Noteneinstellungen für Aufgaben unabhängig von Ihrem Add-on ändern. Senden
Eine GET
-Anfrage an den courses.courseWork
-Endpunkt, um die
maxPoints
-Wert auf Zuweisungsebene. Dabei übergeben Sie itemId
im
CourseWork.id
.
Aktualisieren Sie nun Ihr Datenbankmodell, damit es auch den Wert maxPoints
des Anhangs enthält.
Wir empfehlen, den Wert maxPoints
aus der CREATE
-Antwort zu verwenden:
Python
Fügen Sie zuerst ein max_points
-Feld in die Tabelle Attachment
ein. Hier finden Sie
in der Datei webapp/models.py
ein, wenn Sie unser Beispiel verwenden.
# Database model to represent an attachment.
class Attachment(db.Model):
# The attachmentId is the unique identifier for the attachment.
attachment_id = db.Column(db.String(120), primary_key=True)
# The image filename to store.
image_filename = db.Column(db.String(120))
# The image caption to store.
image_caption = db.Column(db.String(120))
# The maximum number of points for this activity.
max_points = db.Column(db.Integer)
Kehren Sie zur courses.courseWork.addOnAttachments
CREATE
-Anfrage zurück. Geschäft
den in der Antwort zurückgegebenen maxPoints
-Wert.
new_attachment = Attachment(
# The new attachment's unique ID, returned in the CREATE response.
attachment_id=resp.get("id"),
image_filename=key,
image_caption=value,
# Store the maxPoints value returned in the response.
max_points=int(resp.get("maxPoints")))
db.session.add(new_attachment)
db.session.commit()
Der Anhang hat jetzt eine maximale Note. Sie sollten dieses Verhalten testen können. jetzt: einer neuen Aufgabe einen Anhang hinzufügen. zeigt die „Notensynchronisierung“ Label und die „Punkte“ der Aufgabe Änderungen des Werts.
Noten für abgegebene Aufgaben in Classroom festlegen
In diesem Abschnitt wird beschrieben, wie Sie den Zähler für die Note eines Anhangs festlegen. also:
Punktzahl einzelner Schüler/Studenten für den Anhang. Legen Sie dazu einen Schüler/Studenten fest
pointsEarned
-Wert der Einreichung.
Jetzt müssen Sie eine wichtige Entscheidung treffen: Wie soll Ihr Add-on ausgegeben werden?
Anfrage zum Festlegen von pointsEarned
?
Das Problem ist, dass für die Einstellung pointsEarned
der OAuth-Bereich teacher
erforderlich ist.
Sie sollten Schülern oder Studenten den Zugriffsbereich teacher
nicht zuweisen. könnte dies zu
wenn Schüler und Studenten mit dem Add-on interagieren, wie z. B. das Laden der
iFrame für die Ansicht für Lehrkräfte anstelle des iFrames für die Ansicht für Schüler und Studenten. Sie haben daher zwei
Optionen zum Festlegen von pointsEarned
:
- Mit den Anmeldedaten der angemeldeten Lehrkraft.
- (Offline) gespeicherte Anmeldedaten von Lehrkräften verwenden
In den folgenden Abschnitten werden die Vor- und Nachteile der einzelnen Ansätze erläutert, bevor Demonstration der einzelnen Implementierungen. Unsere Beispiele zeigen, beiden Ansätzen zum Übergeben von Noten an Classroom; sieh dir die sprachspezifische Anweisungen weiter unten, um zu erfahren, wie Sie die bereitgestellten Beispiele ausführen:
Python
Oben finden Sie die Deklaration „SET_GRADE_WITH_LOGGED_IN_USER_CREDENTIALS
“.
von webapp/attachment_routes.py
Datei. Legen Sie diesen Wert für die Rücksendung auf True
fest.
mit den Anmeldedaten der angemeldeten Lehrkraft benoten. Legen Sie diesen Wert auf False
fest.
um Noten mit gespeicherten Anmeldedaten zu übergeben, wenn der Schüler/Student die
Aktivitäten.
Noten anhand der Anmeldedaten der angemeldeten Lehrkraft festlegen
Verwenden Sie die Anmeldedaten des angemeldeten Nutzers, um eine Anfrage zum Festlegen von pointsEarned
zu senden.
Dies sollte recht intuitiv erscheinen, da es den Rest der Implementierung widerspiegelt.
und ist mit wenig Aufwand realisierbar.
Beachten Sie jedoch, dass die Lehrkraft nur die Inhalte des Schülers im iFrame an die Aufgabe der Schüler/Studenten. Hier sind einige wichtige Auswirkungen:
- In Classroom werden erst dann Noten eingetragen, wenn die Lehrkraft Aktion in der Classroom-Benutzeroberfläche.
- Möglicherweise muss eine Lehrkraft jede abgegebene Aufgabe öffnen, um alle Noten der Schüler oder Studenten.
- Nach dem Erhalt der Note in Classroom gibt es eine kurze Verzögerung. und die Darstellung in der Classroom-Benutzeroberfläche. Die Verzögerung beträgt in der Regel 5 bis 10 Sekunden, kann aber auch bis zu 30 Sekunden lang sein.
Die Kombination dieser Faktoren bedeutet, dass Lehrkräfte umfangreiche, zeitaufwendige manuelle Arbeit ein, um die Noten eines Kurses vollständig auszufüllen.
Fügen Sie für diesen Ansatz einen zusätzlichen API-Aufruf für den Route zur beruflichen Bewertung.
Nachdem Sie die Datensätze zu abgegebenen Aufgaben und Anhängen abgerufen haben, bewerten Sie die
abgegebenen Aufgaben des Schülers/Studenten und speichern Sie die Note. Die Note wird in der
Feld pointsEarned
eines AddOnAttachmentStudentSubmission
-Objekts Schließlich:
PATCH
-Anfrage an den
courses.courseWork.addOnAttachments.studentSubmissions
-Endpunkt durch den
AddOnAttachmentStudentSubmission
-Instanz im Anfragetext. Beachten Sie, dass wir
Außerdem müssen Sie pointsEarned
im updateMask
in der PATCH
-Anfrage angeben:
Python
# Look up the student's submission in our database.
student_submission = Submission.query.get(flask.session["submissionId"])
# Look up the attachment in the database.
attachment = Attachment.query.get(student_submission.attachment_id)
grade = 0
# See if the student response matches the stored name.
if student_submission.student_response.lower(
) == attachment.image_caption.lower():
grade = attachment.max_points
# Create an instance of the Classroom service.
classroom_service = ch._credential_handler.get_classroom_service()
# Build an AddOnAttachmentStudentSubmission instance.
add_on_attachment_student_submission = {
# Specifies the student's score for this attachment.
"pointsEarned": grade,
}
# Issue a PATCH request to set the grade numerator for this attachment.
patch_grade_response = classroom_service.courses().courseWork(
).addOnAttachments().studentSubmissions().patch(
courseId=flask.session["courseId"],
itemId=flask.session["itemId"],
attachmentId=flask.session["attachmentId"],
submissionId=flask.session["submissionId"],
# updateMask is a list of fields being modified.
updateMask="pointsEarned",
body=add_on_attachment_student_submission).execute()
Noten mithilfe von Offline-Anmeldedaten der Lehrkraft festlegen
Für den zweiten Ansatz zum Festlegen von Noten sind gespeicherte Anmeldedaten erforderlich.
für die Lehrkraft, die den Anhang erstellt hat. Bei dieser Implementierung müssen
Sie sich die Anmeldedaten mithilfe der Aktualisierung und der Aktualisierung
Zugriffstokens und legen Sie mit diesen Anmeldedaten pointsEarned
fest.
Ein entscheidender Vorteil dieses Ansatzes ist, dass Noten eingetragen werden, ohne dass die Lehrkräfte über die Classroom-Benutzeroberfläche wie oben beschrieben. Das hat zur Folge, dass Endnutzer die Benotung wahrnehmen. reibungslos und effizient ist. Außerdem können Sie bei diesem Ansatz wenn Sie Noten bekannt geben, z. B. wenn die Schüler oder Studenten die Aufgabe abgeschlossen haben. Aktivität oder asynchron.
Führen Sie die folgenden Aufgaben aus, um diesen Ansatz zu implementieren:
- Ändern Sie die Nutzer-Datenbankeinträge, um ein Zugriffstoken zu speichern.
- Ändern Sie Datenbankeinträge für Anhänge, um eine Lehrkräfte-ID zu speichern.
- Rufen Sie die Anmeldedaten der Lehrkraft ab und erstellen Sie (optional) eine neue Classroom-Dienstinstanz.
- Benotung einer abgegebenen Aufgabe festlegen
Legen Sie für diese Demo die Note fest, wenn der Schüler oder Student fertig ist. der Aktivität; wenn der Schüler oder Student das Formular in der Ansicht Route.
Nutzer-Datenbankeinträge ändern, um Zugriffstoken zu speichern
Für API-Aufrufe sind zwei eindeutige Tokens erforderlich: das Aktualisierungstoken und das
Zugriffstoken abrufen. Wenn Sie bisher die Schritte der Reihe mit Schritt-für-Schritt-Anleitungen gesehen haben,
Im User
-Tabellenschema sollte bereits ein Aktualisierungstoken gespeichert sein. Aktualisierung speichern
ist ausreichend, wenn Sie nur API-Aufrufe mit dem angemeldeten Nutzer durchführen, z. B.
erhalten Sie im Rahmen des Authentifizierungsvorgangs ein Zugriffstoken.
Allerdings müssen Sie nicht mehr als der angemeldete Nutzer telefonieren,
was bedeutet, dass der Authentifizierungsvorgang nicht verfügbar ist. Daher müssen Sie die
Zugriffstoken zusammen mit dem Aktualisierungstoken. Aktualisieren Sie das User
-Tabellenschema auf
Fügen Sie ein Zugriffstoken hinzu:
Python
In unserem Beispiel befindet sich dies in der Datei webapp/models.py
.
# Database model to represent a user.
class User(db.Model):
# The user's identifying information:
id = db.Column(db.String(120), primary_key=True)
display_name = db.Column(db.String(80))
email = db.Column(db.String(120), unique=True)
portrait_url = db.Column(db.Text())
# The user's refresh token, which will be used to obtain an access token.
# Note that refresh tokens will become invalid if:
# - The refresh token has not been used for six months.
# - The user revokes your app's access permissions.
# - The user changes passwords.
# - The user belongs to a Google Cloud organization
# that has session control policies in effect.
refresh_token = db.Column(db.Text())
# An access token for this user.
access_token = db.Column(db.Text())
Aktualisieren Sie dann jeden Code, der einen User
-Eintrag erstellt oder aktualisiert, um auch den
Zugriffstoken:
Python
In unserem Beispiel befindet sich dies in der Datei webapp/credential_handler.py
.
def save_credentials_to_storage(self, credentials):
# Issue a request for the user's profile details.
user_info_service = googleapiclient.discovery.build(
serviceName="oauth2", version="v2", credentials=credentials)
user_info = user_info_service.userinfo().get().execute()
flask.session["username"] = user_info.get("name")
flask.session["login_hint"] = user_info.get("id")
# See if we have any stored credentials for this user. If they have used
# the add-on before, we should have received login_hint in the query
# parameters.
existing_user = self.get_credentials_from_storage(user_info.get("id"))
# If we do have stored credentials, update the database.
if existing_user:
if user_info:
existing_user.id = user_info.get("id")
existing_user.display_name = user_info.get("name")
existing_user.email = user_info.get("email")
existing_user.portrait_url = user_info.get("picture")
if credentials and credentials.refresh_token is not None:
existing_user.refresh_token = credentials.refresh_token
# Update the access token.
existing_user.access_token = credentials.token
# If not, this must be a new user, so add a new entry to the database.
else:
new_user = User(
id=user_info.get("id"),
display_name=user_info.get("name"),
email=user_info.get("email"),
portrait_url=user_info.get("picture"),
refresh_token=credentials.refresh_token,
# Store the access token as well.
access_token=credentials.token)
db.session.add(new_user)
db.session.commit()
Datenbankeinträge für Anhänge ändern, um eine Lehrkraft-ID zu speichern
Wenn Sie eine Note für eine Aktivität festlegen möchten, rufen Sie pointsEarned
auf und legen Sie
Lehrkraft des Kurses an. Dafür gibt es mehrere Möglichkeiten:
- Speichern Sie eine lokale Zuordnung der Anmeldedaten von Lehrkräften zu Kurs-IDs. Beachten Sie jedoch, kann nicht immer einem bestimmten Kurs zugeordnet werden.
- Senden Sie
GET
-Anfragen an dencourses
-Endpunkt der Classroom API, um die aktuelle(n) Lehrer(n) abrufen. Fragen Sie dann die lokalen Nutzerdatensätze ab, mit den Anmeldedaten einer Lehrkraft übereinstimmen. - Speichern Sie beim Erstellen eines Add-on-Anhangs eine Lehrer-ID in der lokalen
Anhangsdatenbank. Rufen Sie dann die Anmeldedaten der Lehrkraft aus dem
attachmentId
wurde an den iFrame der Schüler-/Studentenansicht übergeben.
Dieses Beispiel zeigt die letzte Option, da Sie Noten festlegen, Schüler/Student schließt eine Aktivität als Anhang ab.
Fügen Sie der Tabelle Attachment
Ihrer Datenbank ein Lehrer-ID-Feld hinzu:
Python
In unserem Beispiel befindet sich dies in der Datei webapp/models.py
.
# Database model to represent an attachment.
class Attachment(db.Model):
# The attachmentId is the unique identifier for the attachment.
attachment_id = db.Column(db.String(120), primary_key=True)
# The image filename to store.
image_filename = db.Column(db.String(120))
# The image caption to store.
image_caption = db.Column(db.String(120))
# The maximum number of points for this activity.
max_points = db.Column(db.Integer)
# The ID of the teacher that created the attachment.
teacher_id = db.Column(db.String(120))
Aktualisieren Sie dann jeden Code, der einen Attachment
-Eintrag erstellt oder aktualisiert,
die ID des Erstellers speichern:
Python
In unserem Beispiel befindet sich dies in der create_attachments
-Methode im
webapp/attachment_routes.py
-Datei.
# Store the attachment by id.
new_attachment = Attachment(
# The new attachment's unique ID, returned in the CREATE response.
attachment_id=resp.get("id"),
image_filename=key,
image_caption=value,
max_points=int(resp.get("maxPoints")),
teacher_id=flask.session["login_hint"])
db.session.add(new_attachment)
db.session.commit()
Anmeldedaten der Lehrkraft abrufen
Suchen Sie die Route, über die der iFrame der Schüler-/Studentenansicht bereitgestellt wird. Sofort nach dem Speichern die Antwort des Schülers/Studenten in Ihrer lokalen Datenbank, rufen Sie Anmeldedaten aus Ihrem lokalen Speicher abzurufen. Dies sollte angesichts der in den vorherigen beiden Schritten. Sie können diese auch verwenden, um eine neue Instanz des Classroom-Dienstes für den Nutzer der Lehrkraft:
Python
In unserem Beispiel befindet sich dies in der load_activity_attachment
-Methode in
die Datei webapp/attachment_routes.py
.
# Create an instance of the Classroom service using the tokens for the
# teacher that created the attachment.
# We're assuming that there are already credentials in the session, which
# should be true given that we are adding this within the Student View
# route; we must have had valid credentials for the student to reach this
# point. The student credentials will be valid to construct a Classroom
# service for another user except for the tokens.
if not flask.session.get("credentials"):
raise ValueError(
"No credentials found in session for the requested user.")
# Make a copy of the student credentials so we don't modify the original.
teacher_credentials_dict = deepcopy(flask.session.get("credentials"))
# Retrieve the requested user's stored record.
teacher_record = User.query.get(attachment.teacher_id)
# Apply the user's tokens to the copied credentials.
teacher_credentials_dict["refresh_token"] = teacher_record.refresh_token
teacher_credentials_dict["token"] = teacher_record.access_token
# Construct a temporary credentials object.
teacher_credentials = google.oauth2.credentials.Credentials(
**teacher_credentials_dict)
# Refresh the credentials if necessary; we don't know when this teacher last
# made a call.
if teacher_credentials.expired:
teacher_credentials.refresh(Request())
# Request the Classroom service for the specified user.
teacher_classroom_service = googleapiclient.discovery.build(
serviceName=CLASSROOM_API_SERVICE_NAME,
version=CLASSROOM_API_VERSION,
credentials=teacher_credentials)
Note einer abgegebenen Aufgabe festlegen
Hier gehen Sie genauso vor wie bei Anmeldung beim Anmeldedaten Sie sollten jedoch die Lehrkraft anrufen, Anmeldedaten, die im vorherigen Schritt abgerufen wurden:
Python
# Issue a PATCH request as the teacher to set the grade numerator for this
# attachment.
patch_grade_response = teacher_classroom_service.courses().courseWork(
).addOnAttachments().studentSubmissions().patch(
courseId=flask.session["courseId"],
itemId=flask.session["itemId"],
attachmentId=flask.session["attachmentId"],
submissionId=flask.session["submissionId"],
# updateMask is a list of fields being modified.
updateMask="pointsEarned",
body=add_on_attachment_student_submission).execute()
Add-on testen
Erstellen Sie ähnlich wie in der vorherigen Schritt-für-Schritt-Anleitung eine Aufgabe mit dem Aktivitätstyp als Lehrkraft hinzufügen, als Schüler oder Student eine Antwort senden und dann das im iFrame an die Aufgabe der Schüler/Studenten. Hier sollten Sie die Die Note wird je nach Implementierungsansatz zu unterschiedlichen Zeiten angezeigt:
- Wenn Sie eine Note zurückgegeben haben, nachdem der Schüler/Student die Aktivität abgeschlossen hat, sollten Sie den Notenentwurf bereits in der Benutzeroberfläche sehen, bevor Sie die iFrame von Schülern/Studenten. Außerdem sehen Sie ihn in der Schüler-/Studentenliste, die Aufgabe öffnen, und in der Spalte „Note“ neben der Aufgabe von Schülern/Studenten. Überprüfen Sie den iFrame.
- Wenn Sie eine Note zurückgegeben haben, wenn die Lehrkraft die Aufgaben von Schülern/Studenten öffnet Überprüfen Sie den iFrame. Die Note sollte unter „Note“ angezeigt werden. direkt nach dem iFrame geladen werden. Wie oben erwähnt, kann dies bis zu 30 Sekunden dauern. Anschließend sollte die Note für den jeweiligen Schüler/Studenten auch in der Ansicht anderen Ansichten des Classroom-Notenbuchs.
Prüfen Sie, ob die richtige Punktzahl für den Schüler/Studenten angezeigt wird.
Glückwunsch! Sie können nun mit dem nächsten Schritt fortfahren: Anhänge erstellen. außerhalb von Google Classroom.