Labels aus Dateien entfernen

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

Verwenden Sie die files.modifyLabels Methode, um die Metadaten des Dateilabels aus einer Datei zu entfernen. 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 eine Änderung ungültig ist, schlägt die gesamte Aktualisierung fehl und keine der (potenziell abhängigen) Änderungen wird angewendet.

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

Bei Erfolg enthält der Antwort text die Labels, die durch die Anfrage hinzugefügt oder aktualisiert wurden. Diese sind in einem modifiedLabels Objekt vom Typ Label enthalten.

Beispiel

Im folgenden Codebeispiel wird gezeigt, wie Sie mit labelId alle Felder entfernen, die mit dem Label verknüpft sind, indem Sie fileId verwenden. Wenn ein Label beispielsweise sowohl Text- als auch Nutzerfelder enthält, werden beim Entfernen des Labels beide Felder gelöscht. Wenn Sie das Textfeld aufheben, wird es aus dem Label entfernt, das Nutzerfeld bleibt jedoch unverändert. Weitere Informationen finden Sie unter Label-Feld 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 zu ändernden Labels. Verwenden Sie die files.listLabels Methode, um die Labels in einer Datei zu finden.
  • FILE_ID: The fileId of the file for which the labels are modified.