Cette page explique comment définir un libellé
Field
sur un seul
fichier Google Drive.
Pour ajouter des métadonnées à un fichier en définissant 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é.
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 l'fieldId
d'un champ de texte pour définir
une valeur pour ce Field
sur un
. Lorsqu'un libellé Field
est initialement défini sur un fichier, il l'applique
le fichier. Vous pouvez ensuite annuler la définition d'un seul champ ou supprimer tous les champs associés à
le libellé. Pour en savoir plus, consultez la section Désactiver un champ de libellé au niveau d'une
fichier et Supprimer un libellé d'un
fichier.
Java
LabelFieldModification fieldModification =
new LabelFieldModification().setFieldId("FIELD_ID").setSetTextValues(ImmutableList.of("VALUE"));
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','setTextValues':['VALUE']}
label_modification = {'labelId':'LABEL_ID', 'fieldModifications':[field_modification]}
modified_labels = drive_service.files().modifyLabels(fileId="FILE_ID", body = {'labelModifications' : [label_modification]}).execute()
Node.js
/**
* Set a label with a text field on a Drive file
* @return{obj} updated label data
**/
async function setLabelTextField() {
// 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',
'setTextValues': ['VALUE'],
};
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 : - VALUE: nouveau
value
pour ce champ. - LABEL_ID:
labelId
du libellé à modifier. - FILE_ID: le
fileId
du fichier pour lequel les libellés sont modifiées.
Remarques
- Pour définir un libellé sans champ, appliquez
labelModifications
sans champfieldModifications
présentes. - Pour définir les valeurs des options du champ de sélection, utilisez la méthode
Identifiant
Choice
de la valeur que vous pouvez obtenir en récupérant le schéma de l'étiquette dans API Drive Libellés : - Seul un
Field
qui accepte les listes de valeurs peut avoir plusieurs valeurs. Sinon, vous recevrez une réponse d'erreur400: Bad Request
. - Définissez le type de valeur approprié pour l'élément
Field
sélectionné (par exemple, entier, texte, utilisateur, etc.), sinon vous recevrez une réponse d'erreur400: Bad Request
. Vous pouvez récupérer le type de données d'un champ à l'aide de la méthode API Drive Libellés :