Halaman ini menjelaskan cara membatalkan setelan label
Field pada satu
file Google Drive.
Untuk menghapus metadata dari file dengan membatalkan setelan label file, gunakan metode
files.modifyLabels. Isi permintaan berisi instance ModifyLabelsRequest untuk mengubah kumpulan label pada file. Permintaan mungkin berisi beberapa modifikasi yang diterapkan secara atomik. Artinya, jika ada modifikasi yang tidak valid, seluruh update akan gagal dan tidak ada perubahan (yang mungkin bergantung) yang diterapkan.
ModifyLabelsRequest berisi instance
LabelModification
yang merupakan modifikasi pada label di file. Modifikasi ini mungkin juga berisi instance
of
FieldModification
yang merupakan modifikasi pada kolom label. Untuk membatalkan setelan nilai kolom, tetapkan FieldModification.unsetValues ke True.
Jika berhasil, isi
respons akan berisi
label yang ditambahkan atau diperbarui oleh permintaan. Label ini ada dalam objek
modifiedLabels berjenis Label.
Contoh
Contoh kode berikut menunjukkan cara menggunakan fieldId dan labelId untuk membatalkan setelan nilai kolom pada fileId terkait. Misalnya, jika label berisi kolom teks dan pengguna, membatalkan setelan kolom teks akan menghapusnya dari label, tetapi kolom pengguna tidak akan terpengaruh. Sedangkan menghapus label akan menghapus keduanya kolom
teks dan pengguna yang terkait dengan label tersebut. Untuk mengetahui informasi selengkapnya, lihat
Menghapus label dari file.
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;
}
}
Ganti kode berikut:
- FIELD_ID:
fieldIdkolom yang akan diubah. Untuk menemukanfieldId, ambil label menggunakan Google Drive Labels API. - LABEL_ID:
labelIdlabel yang akan diubah. - FILE_ID:
fileIdfile yang labelnya diubah.