Cette page explique comment annuler la définition d'un libellé
Field
sur un seul
fichier Google Drive.
Pour supprimer des métadonnées d'un fichier en annulant un libellé de fichier, utilisez la méthode
files.modifyLabels
. La
corps de la requête
contient une instance de
ModifyLabelsRequest
pour modifier l'ensemble
d'étiquettes d'un fichier. La requête peut contenir plusieurs
des modifications appliquées de manière atomique. Autrement dit, si des modifications
est valide, cela signifie que la mise à jour échoue dans son intégralité et qu'aucune
dépendantes) sont appliquées.
Le ModifyLabelsRequest
contient une instance de
LabelModification
qui est une modification
d'un libellé dans un fichier. Il peut également contenir une instance
de
FieldModification
qui est une modification
du champ d'un libellé. Pour annuler la définition
des valeurs du champ,
définissez FieldModification.unsetValues
sur True
.
Si l'opération réussit, la réponse
corps contient
les étiquettes ajoutées ou mises à
jour par la requête. Celles-ci existent dans un
Objet modifiedLabels
de type Label
.
Exemple
L'exemple de code suivant montre comment utiliser fieldId
et labelId
pour annuler la définition
les valeurs des champs du fileId
associé. Par exemple, si une étiquette contient
à la fois des champs de texte et des champs utilisateur. Si vous désactivez le champ de texte, il sera supprimé du libellé.
mais le champ de l'utilisateur reste inchangé. En revanche, supprimer un libellé supprime à la fois
de texte et les champs utilisateur
associés au libellé. Pour en savoir plus, consultez
Supprimer un libellé d'un fichier
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;
}
}
Remplacez les éléments suivants :
- FIELD_ID:
fieldId
du champ à modifier. Pour localiserfieldId
, récupérez l'étiquette à l'aide de la méthode API Google Drive Libellés : - LABEL_ID:
labelId
du libellé à modifier. - FILE_ID: le
fileId
du fichier pour lequel les libellés sont modifiées.