یک برچسب را به روز کنید

می‌توانید با اعمال مجموعه‌ای از درخواست‌های به‌روزرسانی که منجر به ویرایش پیش‌نویس جدید می‌شود، یک برچسب را به‌روزرسانی کنید. به عنوان مثال، می توانید یک ویژگی برچسب موجود (شرح برچسب) را به روز کنید یا می توانید یک Field جدید به برچسب اضافه کنید.

به روز رسانی برچسب به عنوان یک به روز رسانی دسته ای عمل می کند زیرا این روش لیستی از اشیاء Request به روز رسانی را می گیرد. طبق همان ترتیبی که در درخواست دسته ای مشخص شده است به روز رسانی می کند. به روز رسانی در به روز رسانی دسته ای به صورت اتمی اعمال می شود. یعنی اگر هر درخواستی در دسته ناموفق باشد، کل به‌روزرسانی ناموفق است و هیچ یک از تغییرات (بالقوه وابسته) اعمال نمی‌شود. برچسب بدون تغییر باقی مانده است.

اگر به‌روزرسانی موفقیت‌آمیز باشد، پیش‌نویس بازنگری حاصل باید قبل از استفاده از تغییرات با هر مورد Drive منتشر شود.

به روز رسانی اشیاء برچسب

یک برچسب شامل بسیاری از انواع شیء دیگر است که می توانند به روز شوند، مانند:

  • ویژگی های برچسب
  • فیلدها و انواع فیلدها
  • گزینه های انتخاب و ویژگی های انتخاب انتخاب

اینها برخی از بسیاری از اشیاء هستند که ظاهر و عملکرد یک برچسب را کنترل می کنند.

دسته های عملیات

عملیات زیر که توسط روش labels.delta پشتیبانی می‌شوند را می‌توان در دسته‌های گسترده زیر دسته‌بندی کرد:

دسته بندی شرح
ايجاد كردن اشیاء را اضافه کنید.
به روز رسانی به روز رسانی ویژگی های خاص یک شی.
فعال کردن اشیاء را فعال کنید
غیر فعال کردن غیرفعال کردن اشیا
حذف اشیاء را حذف کنید.

این دسته بندی ها در بخش بعدی برای توصیف رفتار عملیات خاص استفاده می شوند.

درخواست های به روز رسانی

متد labels.delta با گرفتن یک یا چند شیء Request کار می کند که هر کدام یک نوع درخواست را برای انجام مشخص می کنند. انواع مختلفی از درخواست ها وجود دارد. در اینجا به تفکیک انواع درخواست‌ها که در دسته‌های مختلف گروه‌بندی شده‌اند، آمده است.

نوع درخواست
ویژگی های برچسب
به روز رسانی UpdateLabelPropertiesRequest
رشته
ايجاد كردن CreateFieldRequest
به روز رسانی UpdateFieldPropertiesRequest
UpdateFieldTypeRequest
فعال کردن EnableFieldRequest
غیر فعال کردن DisableFieldRequest
حذف DeleteFieldRequest
انتخاب انتخاب
ايجاد كردن CreateSelectionChoiceRequest
به روز رسانی UpdateSelectionChoicePropertiesRequest
فعال کردن EnableSelectionChoiceRequest را فعال کنید
غیر فعال کردن DisableSelectionChoiceRequest
حذف DeleteSelectionChoiceRequest

ماسک های میدانی

بسیاری از درخواست های نوع "Update" و "Disable" به FieldMask نیاز دارند. این یک لیست با کاما از فیلدهایی است که می‌خواهید به‌روزرسانی کنید و سایر فیلدها را بدون تغییر رها کنید. ماسک برای اطمینان از به روز رسانی فقط فیلدهایی که می خواهید ویرایش کنید لازم است. شما باید حداقل یک فیلد را مشخص کنید.

مثال

برای به روز رسانی یک برچسب، از روش delta در مجموعه labels استفاده کنید.

همچنین باید مشخص کنید:

  • useAdminAccess برای استفاده از اعتبار مدیر کاربر true است. سرور قبل از اجازه دسترسی، تأیید می کند که کاربر مدیر برچسب است.

  • Request که به‌روزرسانی‌های قابل اجرا برای برچسب را مشخص می‌کند.

  • title برچسب از طریق روش property .

  • یک یا چند Field .

  • یک منبع برچسب که هر برچسب را نشان می دهد. این شامل یک Name و ID منبع است که یک شناسه منحصر به فرد جهانی برای برچسب است.

  • LabelView LABEL_VIEW_FULL برای تنظیم نمای منبع اعمال شده برای پاسخ‌های برچسب است. LABEL_VIEW_FULL همه فیلدهای ممکن را برمی گرداند.

این مثال از ID برای به‌روزرسانی برچسب درست استفاده می‌کند.

پایتون

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 شود. برای اطلاعات بیشتر، چرخه عمر برچسب را ببینید.