En esta página, se describe cómo quitar una etiqueta de un solo archivo de Google Drive.
Para quitar los metadatos de la etiqueta de archivo de un archivo, usa el método files.modifyLabels
. El cuerpo de la solicitud contiene una instancia de ModifyLabelsRequest
para modificar el conjunto de etiquetas de un archivo. La solicitud puede contener varias modificaciones que se aplican de forma atómica. Es decir, si alguna modificación no es válida, toda la actualización no se realiza correctamente y no se aplica ninguno de los cambios (que podrían ser dependientes).
El objeto ModifyLabelsRequest
contiene una instancia de LabelModification
, que es una modificación de una etiqueta en un archivo. También puede contener una instancia de FieldModification
, que es una modificación en el campo de una etiqueta. Para quitar la etiqueta del archivo, establece FieldModification.removeLabel
en True
.
Si la operación se realiza correctamente, el cuerpo de la respuesta contiene las etiquetas que se agregaron o actualizaron con la solicitud. Estos existen dentro de un objeto modifiedLabels
del tipo Label
.
Ejemplo
En la siguiente muestra de código, se muestra cómo usar labelId
para quitar todos los campos asociados con la etiqueta usando fileId
. Por ejemplo, si una etiqueta contiene campos de texto y de usuario, quitarla borrará ambos campos asociados a ella. En cambio, si se anula la configuración del campo de texto, se quita de la etiqueta, pero el campo del usuario permanece intacto. Para obtener más información, consulta Cómo anular la configuración de un campo de etiqueta en un archivo.
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;
}
Reemplaza lo siguiente:
- LABEL_ID: Es el
labelId
de la etiqueta que se modificará. Para ubicar las etiquetas en un archivo, usa el métodofiles.listLabels
. - FILE_ID: Es el
fileId
del archivo para el que se modifican las etiquetas.