تعديل تصنيف

يمكنك تعديل تصنيف واحد من خلال تطبيق مجموعة من طلبات التعديل التي تؤدي إلى إنشاء مسودة جديدة. على سبيل المثال، يمكنك تعديل سمة لتصنيف حالي (وصف التصنيف) أو يمكنك إضافة Field جديد إلى التصنيف.

يعمل تعديل التصنيف كتعديل مجمّع لأنّ الطريقة تتضمّن قائمة بكائنات التعديل Request. ويتم إجراء التعديلات وفقًا للترتيب نفسه المحدّد في طلب الدفعة. يتم تطبيق التعديلات في التعديل المجمّع بشكل ذري. وهذا يعني أنّه في حال عدم نجاح أي طلب في المجموعة، لن تنجح عملية التعديل بأكملها ولن يتم تطبيق أي من التغييرات (التي قد تكون مرتبطة). يتم ترك التصنيف بدون تغيير.

في حال نجاح التعديل، يجب نشر المسودّة الناتجة قبل أن يمكن استخدام التغييرات مع أي عنصر في Drive.

تعديل عناصر التصنيف

يتضمّن التصنيف العديد من أنواع العناصر الأخرى التي يمكن تعديلها، مثل:

  • خصائص التصنيف
  • الحقول وأنواع الحقول
  • خيارات التحديد وخصائص خيار التحديد

في ما يلي بعض العناصر العديدة التي تتحكّم في مظهر التصنيف وطريقة عمله.

فئات العمليات

يمكن تجميع العمليات التالية التي تتيحها الطريقة labels.delta في الفئات العامة التالية:

الفئة الوصف
الإنشاءأضِف العناصر.
تعديلتعديل بعض خصائص أحد العناصر
تفعيلفعِّل العناصر.
إيقافإيقاف العناصر
حذفإزالة العناصر

يتم استخدام هذه الفئات في القسم التالي لوصف سلوك عمليات معيّنة.

طلبات التعديل

تعمل طريقة labels.delta من خلال أخذ عنصر واحد أو أكثر من عناصر Request، ويحدّد كل عنصر نوعًا واحدًا من الطلبات التي سيتم تنفيذها. هناك العديد من أنواع الطلبات المختلفة. في ما يلي تفصيل لأنواع الطلبات، مصنّفة في فئات مختلفة.

نوع الطلب
خصائص التصنيف
تعديل UpdateLabelPropertiesRequest
الحقل
الإنشاء CreateFieldRequest
تعديل UpdateFieldPropertiesRequest
UpdateFieldTypeRequest
تفعيل EnableFieldRequest
إيقاف DisableFieldRequest
حذف DeleteFieldRequest
اختيار التحديد
الإنشاء CreateSelectionChoiceRequest
تعديل UpdateSelectionChoicePropertiesRequest
تفعيل EnableSelectionChoiceRequest
إيقاف DisableSelectionChoiceRequest
حذف DeleteSelectionChoiceRequest

أقنعة الحقول

يتطلّب العديد من الطلبات من النوع "تعديل" و "إيقاف" FieldMask. هذه العلامة هي قائمة بالحقول التي تريد تعديلها مع الفصل بينها بفواصل، مع ترك الحقول الأخرى بدون تغيير. القناع مطلوب للتأكّد من تعديل الحقول التي تريدها فقط. يجب تحديد حقل واحد على الأقل.

.

مثال

لتعديل تصنيف، استخدِم طريقة delta في مجموعة labels.

يجب أيضًا تحديد ما يلي:

  • useAdminAccess هو true لاستخدام بيانات اعتماد المشرف الخاصة بالمستخدم. يتأكّد الخادم من أنّ المستخدم هو مشرف على التصنيف قبل السماح له بالوصول إليه.

  • تمثّل Request التعديلات التي تنطبق على التصنيف.

  • تصنيف title من خلال طريقة property

  • Field أو أكثر

  • مورد تصنيف يمثّل كل تصنيف يحتوي على مورد Name وID، وهو معرّف فريد عالميًا للتسمية.

  • LabelView هي LABEL_VIEW_FULL لضبط طريقة عرض "الموارد" المطبَّقة على ردود التصنيفات. تعرض LABEL_VIEW_FULL جميع الحقول الممكنة.

يستخدم هذا المثال ID لتعديل التصنيف الصحيح.

Python

body = {
'use_admin_access': True,
'requests': [{
  'update_label': {
    'properties': {
      'title': 'TITLE'
    },
    'update_mask': {
      'paths': ['title']
    }
  },
}, {
  'create_field': {
    'field': {
      'properties': {
        'display_name': 'DISPLAY_NAME'
      },
      'text_options': {}
    }
  }
}],
'view': 'LABEL_VIEW_FULL'
}
response = service.labels().delta(
  body=body,
  name='labels/ID').execute()

Node.js

var body = {
  'use_admin_access': true,
  'requests': [{
    'update_label': {
      'properties': {
        'title': 'TITLE'
      },
      'update_mask': {
        'paths': ['title']
      }
    },
  }, {
    'create_field': {
      'field': {
        'properties': {
          'display_name': 'DISPLAY_NAME'
        },
        'text_options': {}
      }
    }
  }],
  'view': 'LABEL_VIEW_FULL'
};
service.labels.delta({
  'resource': body,
  'name': 'labels/ID'
}, (err, res) => {
  if (err) return console.error('The API returned an error: ' + err);
  console.log(res);
});

يتم تعديل التصنيف أو الحقل أو الخيار، ويتم زيادة رقم تعريف مراجعة التصنيف، ويتم تخزين التصنيف في قاعدة بيانات كتصنيف مسودة. يتضمّن التصنيف State PUBLISHED مع hasUnpublishedChanges=true، ما يعني أنّ هناك تغييرات في المسودة، ولكنها غير متاحة للمستخدمين. يجب أن يكون التصنيف المعدَّل PUBLISHED قبل أن تصبح التغييرات مرئية للمستخدمين. لمزيد من المعلومات، يُرجى الاطّلاع على دورة حياة التصنيف.