این صفحه نحوهی لغو تنظیم Field
برچسب در یک فایل گوگل درایو را شرح میدهد.
برای حذف متادیتا از یک فایل با حذف برچسب فایل، از متد 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();
نود جی اس
/**
* 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
، برچسب را با استفاده از API برچسبهای گوگل درایو بازیابی کنید. - LABEL_ID : شناسه برچسب
labelId
که قرار است تغییر کند. - FILE_ID :
fileId
فایلی که برچسبها برای آن تغییر داده شدهاند.