لإضافة محتوى إلى نموذج أو تعديل الإعدادات أو البيانات الوصفية أو المحتوى، استخدِم طريقة batchUpdate() التي تجمع التغييرات معًا في حزمة، وبالتالي إذا تعذّر تنفيذ أحد الطلبات، لن يتم تنفيذ أي من التغييرات الأخرى (التي قد تكون مرتبطة).
تعرض الطريقة batchUpdate() نص استجابة يتضمّن استجابة لكل طلب. يحتل كل ردّ الفهرس نفسه الذي يحتله الطلب المقابل، وفي حال عدم توفّر ردّ مناسب للطلب، سيكون الردّ في هذا الفهرس فارغًا.
قبل البدء
نفِّذ المهام التالية قبل المتابعة إلى المهام الواردة في هذه الصفحة:
- أكمِل عملية التفويض/المصادقة وإعداد بيانات الاعتماد باتّباع تعليمات "برنامج الاستخدام المبكر".
تعديل البيانات الوصفية أو الإعدادات أو العناصر
يوضّح المثال التالي كيفية تعديل البيانات الوصفية لنموذج، ولكن البنية هي نفسها بالنسبة إلى المحتوى والإعدادات، إذ تستخدم طلبات updateItem أو updateSettings بدلاً من updateFormInfo. في كل طلب، عليك تقديم اسم الحقل الذي تريد تغييره والقيمة المعدَّلة، بالإضافة إلى قيمة updateMask للحدّ من التغييرات على الحقول التي حدّدتها.
REST
لتعديل وصف النموذج، استخدِم طريقة
batchUpdate()
مع رقم تعريف النموذج وقيمة الوصف المعدَّلة.
نموذج نص الطلب
"requests": [{
"updateFormInfo": {
"info": {
"description": "Please complete this quiz based on this week's readings for class."
},
"updateMask": "description"
}
}]
Python
Node.js
إضافة عنصر
يوضّح المثال التالي كيفية إضافة محتوى جديد إلى نموذج. عند إضافة محتوى جديد، يجب توفير موقع جغرافي مع فهرس يتم فيه إدراج المحتوى الجديد. على سبيل المثال، سيؤدي الموقع الجغرافي الذي يتضمّن الفهرس 0 إلى إدراج المحتوى في بداية النموذج.
REST
لإضافة عنصر إلى النموذج، استدعِ طريقة
batchUpdate()
باستخدام رقم تعريف النموذج ومعلومات العنصر والموقع الجغرافي الذي تم اختياره.
نموذج نص الطلب
"requests": [{
"createItem": {
"item": {
"title": "Homework video",
"description": "Quizzes in Google Forms",
"videoItem": {
"video": {
"youtubeUri": "https://www.youtube.com/watch?v=Lt5HqPvM-eI"
}
}},
"location": {
"index": 0
}
}]
Python
Node.js
ترتيب الطلبات
يقبل الأسلوب batchUpdate()
مجموعة من الطلبات الفرعية، مثل createItem وupdateItem.
يتم التحقّق من صحة الطلبات الفرعية واحدًا تلو الآخر بالترتيب الذي تم تقديمه.
مثال: يتضمّن طلب batchUpdate مصفوفة requests تتضمّن طلبَين فرعيَين من النوع createItem. يحتوي الطلب الفرعي (أ) على location.index 0 ويحتوي الطلب الفرعي (ب) على location.index 1. إذا كانت مصفوفة requests هي [A, B]، ستنجح batchUpdate. إذا كان الصفيف [B, A]، سيتعذّر تنفيذ batchUpdate،
لأنّ location.index 1 غير صالح ما لم يحتوي النموذج على عنصر
في الفهرس 0.