בדף הזה נסביר איך להסיר תווית מקובץ יחיד ב-Google Drive.
כדי להסיר את המטא-נתונים של תוויות הקובץ מקובץ, משתמשים באופרטור
files.modifyLabels
.
גוף הבקשה
מכיל מופע של
ModifyLabelsRequest
כדי לשנות את קבוצת התוויות בקובץ. הבקשה עשויה להכיל כמה
שעושים שינויים אטומיים. כלומר, אם בוצעו שינויים שלא
העדכון כולו ייכשל, ואף אחד
תלויים) הוחלו שינויים.
השדה ModifyLabelsRequest
מכיל מופע של
LabelModification
שינוי בתווית בקובץ. יכול להיות שהוא גם מכיל מופע.
מתוך
FieldModification
שינוי בשדה של תווית. כדי להסיר את התווית מהקובץ:
להגדיר את FieldModification.removeLabel
להיות True
.
אם הפעולה מצליחה, התגובה
גוף מכיל
התוויות שנוספו או עודכנו בעקבות הבקשה. הן קיימות במסגרת
אובייקט modifiedLabels
מסוג Label
.
דוגמה
דוגמת הקוד הבאה מראה איך משתמשים ב-labelId
כדי להסיר את כל השדות
שמשויך לתווית באמצעות fileId
. לדוגמה, אם תווית כוללת
גם בשדות טקסט וגם בשדות משתמש, הסרת תווית מוחקת גם את הטקסט וגם את המשתמש
בשדות שמשויכים לתווית. לעומת זאת, ביטול ההגדרה של שדה הטקסט גורם להסרה שלו
מהתווית, אבל לא משפיע על שדה המשתמש. מידע נוסף זמין במאמר הבא:
איך מבטלים את ההגדרה של שדה תווית בקובץ
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;
}
מחליפים את מה שכתוב בשדות הבאים:
- LABEL_ID: ה-
labelId
של התווית שרוצים לשנות. כדי לאתר את התוויות בקובץ, השתמשוfiles.listLabels
. - FILE_ID: ה-
fileId
של הקובץ שעבורו התוויות משויכות שונה.