Festlegung eines Labelfelds in einer Datei aufheben

Auf dieser Seite wird beschrieben, wie die Festlegung eines Labels aufgehoben wird Field pro Person Google Drive-Datei.

Um Metadaten aus einer Datei zu entfernen, indem Sie die Festlegung eines Dateilabels aufheben, verwenden Sie den files.modifyLabels-Methode. Die Anfragetext enthält eine Instanz von ModifyLabelsRequest um den Satz von Labels für eine Datei zu ändern. Die Anfrage kann mehrere Änderungen, die in kleinstmöglichen Schritten angewendet werden. Das heißt, wenn Änderungen nicht gültig ist, ist das gesamte Update fehlgeschlagen und keine der (potenziell Änderungen angewendet werden.

ModifyLabelsRequest enthält eine Instanz von LabelModification eine Änderung eines Labels in einer Datei. Es kann auch eine -Instanz enthalten, von FieldModification eine Änderung am Feld eines Labels. Um die Werte für das Feld aufzuheben, Legen Sie FieldModification.unsetValues auf True fest.

Bei Erfolg wird die -Antwort Text enthält die von der Anfrage hinzugefügten oder aktualisierten Labels. Diese befinden sich in einem modifiedLabels-Objekt vom Typ Label.

Beispiel

Das folgende Codebeispiel zeigt, wie fieldId und labelId verwendet werden, um die Festlegung aufzuheben die Feldwerte auf der zugehörigen fileId. Wenn ein Label beispielsweise sowohl das Text- als auch das Nutzerfeld verwenden, wird es vom Label entfernt, wenn Sie die Einstellungen für das Textfeld aufheben. Das Benutzerfeld bleibt jedoch unberührt. Wenn Sie dagegen ein Label entfernen, werden beide Text- und Nutzerfelder, die mit dem Label verknüpft sind. Weitere Informationen finden Sie unter Labels aus einer Datei entfernen

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

Ersetzen Sie Folgendes:

  • FIELD_ID: Die fieldId des Felds, das geändert werden soll. Um zu finden, den fieldId, rufen Sie das Label mithilfe der Google Drive Labels API
  • LABEL_ID: Die labelId des zu ändernden Labels.
  • FILE_ID: Der fileId der Datei, für die die Labels verwendet werden. geändert.