Trang này mô tả cách huỷ đặt nhãn
Field trên một tệp
Google Drive.
Để xoá siêu dữ liệu khỏi một tệp bằng cách huỷ đặt nhãn tệp, hãy sử dụng phương thức
files.modifyLabels. Phần nội dung yêu cầu
chứa một phiên bản của
ModifyLabelsRequest
để sửa đổi tập hợp nhãn trên một tệp. Yêu cầu có thể chứa một số sửa đổi được áp dụng một cách nguyên tử. Tức là nếu có bất kỳ sửa đổi nào không hợp lệ, thì toàn bộ quá trình cập nhật sẽ không thành công và không có thay đổi nào (có khả năng phụ thuộc) được áp dụng.
ModifyLabelsRequest chứa một phiên bản của
LabelModification
đây là một sửa đổi đối với nhãn trên một tệp. Phiên bản này cũng có thể chứa một phiên bản
của
FieldModification
, đây là một sửa đổi đối với trường của nhãn. Để huỷ đặt giá trị cho trường, hãy đặt FieldModification.unsetValues thành True.
Nếu thành công, phần nội dung
phản hồi sẽ chứa
các nhãn được thêm hoặc cập nhật theo yêu cầu. Các nhãn này tồn tại trong một đối tượng
modifiedLabels thuộc loại Label.
Ví dụ:
Mã mẫu sau đây cho biết cách sử dụng fieldId và labelId để huỷ đặt giá trị trường trên fileId được liên kết. Ví dụ: nếu một nhãn chứa cả trường văn bản và trường người dùng, thì việc huỷ đặt trường văn bản sẽ xoá trường đó khỏi nhãn nhưng không ảnh hưởng đến trường người dùng. Trong khi đó, việc xoá một nhãn sẽ xoá cả trường văn bản và trường người dùng được liên kết với nhãn đó. Để biết thêm thông tin, hãy xem
Xoá nhãn khỏi tệp.
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;
}
}
Thay thế nội dung sau:
- FIELD_ID:
fieldIdcủa trường cần sửa đổi. Để xác định vị trífieldId, hãy truy xuất nhãn bằng API Nhãn của Google Drive. - LABEL_ID:
labelIdcủa nhãn cần sửa đổi. - FILE_ID:
fileIdcủa tệp mà nhãn được sửa đổi.