Labels aus Dateien entfernen

Auf dieser Seite wird beschrieben, wie Sie ein Label von einer einzelnen Google Drive-Datei entfernen.

Wenn Sie die Metadaten des Dateilabels aus einer Datei entfernen möchten, verwenden Sie die Methode files.modifyLabels. Der Anfragetext enthält eine Instanz von ModifyLabelsRequest, um die Labels einer Datei zu ändern. Die Anfrage kann mehrere Änderungen enthalten, die atomar angewendet werden. Wenn also Änderungen ungültig sind, schlägt das gesamte Update fehl und keine der (potenziell abhängigen) Änderungen werden angewendet.

Die ModifyLabelsRequest enthält eine Instanz von LabelModification, einer Änderung an einem Label in einer Datei. Es kann auch eine Instanz von FieldModification enthalten, was eine Änderung am Feld eines Labels ist. Wenn Sie das Label aus der Datei entfernen möchten, setzen Sie FieldModification.removeLabel auf True.

Bei Erfolg enthält der Antworttext die Labels, die durch die Anfrage hinzugefügt oder aktualisiert wurden. Sie befinden sich in einem modifiedLabels-Objekt vom Typ Label.

Beispiel

Im folgenden Codebeispiel wird gezeigt, wie mit labelId alle mit dem Label verknüpften Felder entfernt werden, die mit fileId beginnen. Wenn ein Label beispielsweise sowohl Text- als auch Nutzerfelder enthält, werden beim Entfernen des Labels sowohl die Text- als auch die Nutzerfelder gelöscht. Wenn Sie das Textfeld jedoch aufheben, wird es aus dem Label entfernt, das Nutzerfeld bleibt jedoch unverändert. Weitere Informationen finden Sie unter Labelfeld in einer Datei zurücksetzen.

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;
  }

Ersetzen Sie Folgendes:

  • LABEL_ID: Die labelId des zu ändernden Labels. Verwenden Sie die Methode files.listLabels, um die Labels in einer Datei zu finden.
  • FILE_ID: Die fileId der Datei, für die die Labels geändert werden.