Xoá nhãn khỏi tệp

Trang này mô tả cách xoá nhãn trên một tệp Google Drive.

Để xoá siêu dữ liệu nhãn tệp khỏi một tệp, hãy sử dụng phương thức files.modifyLabels. Nội dung yêu cầu chứa một thực thể của ModifyLabelsRequest để sửa đổi tập hợp nhãn trên tệp. Yêu cầu này có thể chứa một số nội dung sửa đổi được áp dụng tỉ mỉ. Nghĩa là nếu bất kỳ nội dung 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ó thể phụ thuộc) được áp dụng.

ModifyLabelsRequest chứa một bản sao của LabelModification, là một bản sửa đổi đối với nhãn trên tệp. Tệp này cũng có thể chứa một bản sao của FieldModification. Đây là một bản sửa đổi đối với trường của nhãn. Để xoá nhãn khỏi tệp, hãy đặt FieldModification.removeLabel thành True.

Nếu thành công, 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 tham số này tồn tại trong đối tượng modifiedLabels thuộc loại Label.

Ví dụ:

Mã mẫu sau đây cho biết cách sử dụng labelId để xoá tất cả trường liên kết với nhãn bằng fileId. 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 xoá nhãn sẽ xoá cả trường văn bản và trường người dùng liên kết với nhãn đó. Trong khi đó, việc không thiết lập trường văn bản sẽ xóa trường đó khỏi nhãn nhưng vẫn giữ nguyên trường người dùng. Để biết thêm thông tin, hãy xem phần Huỷ đặt trường nhãn trên tệp.

Java

ModifyLabelsRequest modifyLabelsRequest =
  new ModifyLabelsRequest()
      .setLabelModifications(
          ImmutableList.of(
              new LabelModification()
                .setLabelId("LABEL_ID")
                .setRemoveLabel(true)));

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

Python

label_modification = {'labelId':'LABEL_ID', 'removeLabel': True]}

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

Node.js

/**
* Remove a label on a Drive file
* @return{obj} updated label data
**/
async function removeLabel() {
  // 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 labelModification = {
    'labelId': 'LABEL_ID',
    'removeLabel': True,
  };
  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ế đoạn mã sau:

  • LABEL_ID: labelId của nhãn cần sửa đổi. Để tìm nhãn trên một tệp, hãy sử dụng phương thức files.listLabels.
  • FILE_ID: fileId của tệp mà nhãn được sửa đổi.