0

Google Apps Script で Classroom API の StudentSubmissions.Patch 部分を使用しようとすると、このエラーが発生し続けます

updateMask: updateMask には「draftGrade」または「assignedGrade」のみを含めることができます

その特定のセクションのコードは次のとおりです。

var studentSubmission = {'draft_grade':'88'}
var patchC = Classroom.Courses.CourseWork.StudentSubmissions.patch(studentSubmission, courseId, cwId, submissionId);

StudentSubmission Resource パラメーターを渡す方法に明らかに問題がありますが、その理由がわかりません...

これは明らかに私が参照しているドキュメントです - https://developers.google.com/classroom/reference/rest/v1/courses.courseWork.studentSubmissions/patch

アップデート

お二人のおっしゃることを反映するように、コードを少し変更することができました。KENdi の例は Python と Ein2012 にあるため、var patchC = Classroom...行でエラーが発生します。

私は今このように見えるいくつかのことを変更しました:

var studentSubmission = {'draftGrade':'88'}
   var extra =  {'updateMask':'draftGrade'};
   var patchC = Classroom.Courses.CourseWork.StudentSubmissions.patch(studentSubmission, courseId, cwId, submissionId, extra);

しかし、「@ProjectPermissionDenied The Developer Console project is not allowed to make this request」という別のエラーが表示されます。そのため、そのフォーマットが正しいのか、解決していない開発者コンソールの状況があるのか​​ (正しいように感じますが)、それとも新しいフォーマットが間違っていてワイルドな許可を得ているだけなのかはわかりません。エラー。

この類似のエラーが表示されましたが、コースの課題がスクリプトではなく教室で通常どおりに作成されたものである場合はどうなりますか? ああ。

4

2 に答える 2

1

更新マスク フィールドを指定し、後で実行し、ドキュメントの指示に従って名前も指定します ("draftGrade","assignedGrade")

var studentSubmission = {'draftGrade':'88'}
var patchC = Classroom.Courses.CourseWork.StudentSubmissions.patch(studentSubmission, courseId, cwId, submissionId);
patchC.UpdateMask = "draftGrade";


var response = submisionObj.Execute();
于 2016-07-21T12:21:11.733 に答える
0

エラーから、 には" " または " "updateMaskのみを含める必要があると記載されています。したがって、コードから、updateMask に必要なのはその 2 つの値だけです。draftGradeassignedGrade

updateMask、学生の提出物のどのフィールドを更新するかを識別します。このフィールドは、更新を行うために必要です。無効なフィールドが指定されている場合、更新は失敗します

このドキュメントから、StudentSubmissionリソースには成績を保存するための 2 つのフィールドがassignedGradeありdraftGradeます。これらのフィールドはcourses.courseWork.studentSubmissions.patch、適切なフィールドを含むフィールド マスクを使用して更新されます。

これを行う方法のサンプルコードを次に示します。

studentSubmission = { 
'assignedGrade': 99, 
'draftGrade': 80 
} 
service.courses().courseWork().studentSubmission().patch( 
courseId=<course ID or alias>, 
courseWorkId=<courseWork ID>, 
id=<studentSubmission ID>, 
updateMask='assignedGrade,draftGrade', 
body=studentSubmission).execute()
于 2016-07-21T13:30:25.703 に答える