توضّح هذه الصفحة كيفية إزالة تصنيف
Field
من ملف واحد في
Google Drive.
لإزالة البيانات الوصفية من ملف عن طريق إلغاء ضبط تصنيف ملف، استخدِم الطريقة
files.modifyLabels
. يحتوي نص الطلب على مثال ModifyLabelsRequest
لتعديل مجموعة التصنيفات في ملف. قد يحتوي الطلب على عدة تعديلات يتم تطبيقها بشكل متزامن. وهذا يعني أنّه إذا كانت أي تعديلات غير صالحة، سيتعذّر إجراء التعديل بالكامل ولن يتم تطبيق أي من التغييرات (التي قد تكون مرتبطة).
يحتوي ModifyLabelsRequest
على مثيل من
LabelModification
وهو تعديل على تصنيف في ملف. قد يحتوي أيضًا على مثيل
FieldModification
وهو تعديل على حقل تصنيف. لإلغاء ضبط قيم الحقل، اضبط FieldModification.unsetValues
على True
.
في حال نجاح الطلب، يحتوي نص الاستجابة على التصنيفات التي تمت إضافتها أو تعديلها. تتوفّر هذه السمة ضمن الكائن modifiedLabels
من النوع Label
.
مثال
يوضّح نموذج الرمز البرمجي التالي كيفية استخدام fieldId
وlabelId
لإلغاء ضبط قيم الحقول في fileId
المرتبط. على سبيل المثال، إذا كان التصنيف يتضمّن كلاً من حقل النص وحقل المستخدم، ستؤدي إزالة حقل النص إلى إزالته من التصنيف، ولكن سيظل حقل المستخدم كما هو. في المقابل، يؤدي حذف تصنيف إلى حذف كل من النص وحقول المستخدمين المرتبطة بالتصنيف. لمزيد من المعلومات، يُرجى الاطّلاع على إزالة تصنيف من ملف.
Java
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();
Python
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
الملف الذي تم تعديل التصنيفات الخاصة به.