In questa pagina viene descritto come impostare un'etichetta
Field
su una singola
File di Google Drive.
Per aggiungere metadati a un file impostando un'etichetta del file, utilizza la classe
files.modifyLabels
. La
corpo della richiesta
contiene un'istanza di
ModifyLabelsRequest
per modificare l'insieme di etichette in un file. La richiesta può contenere diversi
modifiche applicate a livello atomico. Vale a dire se eventuali modifiche non
valida, l'intero aggiornamento non andrà a buon fine e nessuno dei problemi (potenzialmente
dipendenti) vengono applicate.
ModifyLabelsRequest
contiene un'istanza di
LabelModification
ovvero la modifica di un'etichetta in un file. Potrebbe anche contenere un'istanza
di
FieldModification
ovvero una modifica al campo di un'etichetta.
Se l'esito è positivo, la risposta
body contiene
le etichette aggiunte o aggiornate dalla richiesta. Questi si trovano all'interno di
Oggetto modifiedLabels
di tipo Label
.
Esempio
Il seguente esempio di codice mostra come utilizzare il valore fieldId
di un campo di testo per impostare
un valore per Field
su una
. Quando in un file viene impostata inizialmente un'etichetta Field
, la viene applicata a
del file. Puoi quindi annullare l'impostazione di un singolo campo o rimuovere tutti i campi associati a
l'etichetta. Per ulteriori informazioni, consulta la sezione Annullare l'impostazione di un campo etichetta in una
file e Rimuovi un'etichetta da un file
.
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;
}
}
Sostituisci quanto segue:
- FIELD_ID: il
fieldId
del campo da modificare. Per individuarefieldId
, recupera l'etichetta utilizzando API Google Drive Etichette. - VALUE: il nuovo
value
per questo campo. - LABEL_ID:
labelId
dell'etichetta da modificare. - FILE_ID: i valori
fileId
del file per cui si trovano le etichette modificato.
Note
- Per impostare un'etichetta senza campi, applica
labelModifications
senzafieldModifications
presenti. - Per impostare i valori per le opzioni del campo di selezione, utilizza il
Choice
ID del valore che puoi ottenere recuperando lo schema delle etichette API Drive Labels. - Solo un
Field
che supporta elenchi di valori può avere più valori impostati, altrimenti riceverai una risposta di errore400: Bad Request
. - Imposta il tipo di valore corretto per il valore
Field
selezionato (ad es. numero intero, testo, utente e così via), altrimenti riceverai una risposta di errore400: Bad Request
. Puoi recuperare il tipo di dati dei campi utilizzando il metodo API Drive Etichette.