Labels aus Dateien entfernen

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

Verwenden Sie die Methode files.modifyLabels, um die Metadaten des Dateilabels aus einer Datei zu entfernen. Der Anfragetext enthält eine Instanz von ModifyLabelsRequest, um den Satz von Labels in einer Datei zu ändern. Die Anfrage kann mehrere Änderungen enthalten, die atomar angewendet werden. Das heißt, wenn Änderungen nicht gültig sind, ist die gesamte Aktualisierung nicht erfolgreich und keine der (potenziell abhängigen) Änderungen wird angewendet.

ModifyLabelsRequest enthält eine Instanz von LabelModification, bei der es sich um eine Änderung eines Labels in einer Datei handelt. Es kann auch eine Instanz von FieldModification enthalten, bei der es sich um eine Änderung des Felds eines Labels handelt. 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 sind in einem modifiedLabels-Objekt vom Typ Label enthalten.

Beispiel

Das folgende Codebeispiel zeigt, wie Sie mit labelId alle mit dem Label verknüpften Felder mithilfe von fileId entfernen. Wenn ein Label beispielsweise sowohl Text- als auch Nutzerfelder enthält, werden beim Entfernen eines Labels sowohl der Text als auch die Nutzerfelder, die mit dem Label verknüpft sind, sowohl gelöscht. Wird die Festlegung des Textfelds aufgehoben, wird es aus dem Label entfernt, das Nutzerfeld bleibt jedoch unberührt. Weitere Informationen finden Sie unter Festlegen eines Labelfelds in einer Datei aufheben.

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 Labels, das geändert werden soll. Verwenden Sie die Methode files.listLabels, um die Labels in einer Datei zu finden.
  • FILE_ID: fileId der Datei, für die die Labels geändert werden.