تنظیم فیلد برچسب روی یک فایل

این صفحه نحوه حذف یک برچسب Field در یک فایل Google Drive توضیح می دهد.

برای حذف ابرداده از یک فایل با حذف برچسب فایل، از روش files.modifyLabels استفاده کنید. بدنه درخواست شامل نمونه‌ای از ModifyLabelsRequest برای اصلاح مجموعه برچسب‌ها در یک فایل است. درخواست ممکن است شامل تغییرات متعددی باشد که به صورت اتمی اعمال می شوند. به این معنا که اگر هر گونه تغییری معتبر نباشد، کل به‌روزرسانی ناموفق است و هیچ یک از تغییرات (بالقوه وابسته) اعمال نمی‌شود.

ModifyLabelsRequest شامل نمونه ای از LabelModification است که اصلاحی برای برچسب روی یک فایل است. همچنین ممکن است شامل یک نمونه از FieldModification باشد که اصلاحی در فیلد یک برچسب است. برای لغو تنظیم مقادیر فیلد، FieldModification.unsetValues روی True تنظیم کنید.

در صورت موفقیت آمیز بودن، بدنه پاسخ حاوی برچسب هایی است که توسط درخواست اضافه یا به روز شده است. اینها در یک شیء modifiedLabels از نوع Label وجود دارند.

مثال

نمونه کد زیر نحوه استفاده از fieldId و labelId را برای حذف مقادیر فیلد در fileId مرتبط نشان می‌دهد. به عنوان مثال، اگر یک برچسب دارای هر دو قسمت متن و فیلد کاربر باشد، با لغو تنظیم فیلد متن، آن را از برچسب حذف می‌کند اما فیلد کاربر را دست نخورده باقی می‌گذارد. در حالی که حذف یک برچسب هر دو قسمت متن و کاربر مرتبط با برچسب را حذف می کند. برای اطلاعات بیشتر، به حذف برچسب از فایل مراجعه کنید.

جاوا

LabelFieldModification fieldModification =
  new LabelFieldModification().setFieldId("FIELD_ID").setUnsetValues(true);

ModifyLabelsRequest modifyLabelsRequest =
  new ModifyLabelsRequest()
      .setLabelModifications(
          ImmutableList.of(
              new LabelModification()
                .setLabelId("LABEL_ID")
                .setFieldModifications(ImmutableList.of(fieldModification))));

ModifyLabelsResponse modifyLabelsResponse = driveService.files().modifyLabels("FILE_ID", modifyLabelsRequest).execute();

پایتون

field_modification = {'fieldId':'FIELD_ID','unsetValues':True}
label_modification = {'labelId':'LABEL_ID', 'fieldModifications':[field_modification]}

modified_labels = drive_service.files().modifyLabels(fileId="FILE_ID", body = {'labelModifications' : [label_modification]}).execute();

Node.js

/**
* Unset a label with a field on a Drive file
* @return{obj} updated label data
**/
async function unsetLabelField() {
  // Get credentials and build service
  // TODO (developer) - Use appropriate auth mechanism for your app

  const {GoogleAuth} = require('google-auth-library');
  const {google} = require('googleapis');

  const auth = new GoogleAuth({scopes: 'https://www.googleapis.com/auth/drive'});
  const service = google.drive({version: 'v3', auth});
  const fieldModification = {
    'fieldId': 'FIELD_ID',
    'unsetValues': True,
  };
  const labelModification = {
    'labelId': 'LABEL_ID',
    'fieldModifications': [fieldModification],
  };
  const labelModificationRequest = {
    'labelModifications': [labelModification],
  };
  try {
    const updateResponse = await service.files.modifyLabels({
      fileId: 'FILE_ID',
      resource: labelModificationRequest,
    });
    return updateResponse;
  } catch (err) {
    // TODO (developer) - Handle error
    throw err;
  }
}

موارد زیر را جایگزین کنید:

  • FIELD_ID : fieldId فیلد برای تغییر. برای مکان یابی fieldId ، برچسب را با استفاده از Google Drive Labels API بازیابی کنید.
  • LABEL_ID : labelId برچسب برای تغییر.
  • FILE_ID : fileId فایلی که برچسب‌ها برای آن اصلاح شده‌اند.