Auf dieser Seite wird beschrieben, wie Sie ein Label aus einer einzelnen Google Drive-Datei entfernen.
Mit der Methode files.modifyLabels
können Sie die Metadaten von Dateilabels aus einer Datei entfernen. Der Anfragetext enthält eine Instanz von ModifyLabelsRequest
zum Ändern des Labelsatzes für eine Datei. Die Anfrage kann mehrere Änderungen enthalten, die in kleinstmöglichen Schritten angewendet werden. Wenn also Änderungen nicht gültig sind, schlägt die gesamte Aktualisierung fehl und keine der (möglicherweise abhängigen) Änderungen wird angewendet.
Die ModifyLabelsRequest
enthält eine Instanz von LabelModification
, bei der ein Label in einer Datei geändert wird. Es kann auch eine Instanz von FieldModification
enthalten, wobei 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
.
Wenn der Vorgang erfolgreich ist, enthält der Antworttext die Labels, die von der Anfrage hinzugefügt oder aktualisiert wurden. Diese befinden sich in einem modifiedLabels
-Objekt vom Typ Label
.
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 die mit dem Label verknüpften Text- als auch Nutzerfelder gelöscht. Wenn Sie die Einstellungen für das Textfeld aufheben, wird es aus dem Label entfernt, das Nutzerfeld bleibt jedoch unverändert. Weitere Informationen finden Sie unter Festlegung 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 zu ändernden Labels. Verwenden Sie die Methodefiles.listLabels
, um die Labels in einer Datei zu finden. - FILE_ID: Der
fileId
der Datei, für die die Labels geändert werden.