توضّح هذه الصفحة طريقة إلغاء ضبط تصنيف
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 Categories API. - LABEL_ID:
labelId
للتصنيف المطلوب تعديله. - FILE_ID:
fileId
من الملف الذي تم تعديل التصنيفات له.