คุณอัปเดตป้ายกำกับเดียวได้โดยใช้ Google Drive Labels API ด้วยการใช้ชุดคำขออัปเดตซึ่งส่งผลให้เกิดการแก้ไขฉบับร่างใหม่ เช่น คุณสามารถอัปเดต
ป้ายกำกับที่มีอยู่
Properties (คำอธิบายป้ายกำกับ
พื้นฐาน) หรือเพิ่ม
Fieldใหม่ลงในป้ายกำกับ
การอัปเดตป้ายกำกับจะทำหน้าที่เป็นการอัปเดตเป็นกลุ่ม เนื่องจากเมธอดนี้ใช้รายการอัปเดต
Request
ออบเจ็กต์ โดยจะทำการอัปเดตตามลำดับเดียวกับที่ระบุไว้ในคำขอแบบเป็นชุด การอัปเดตในการอัปเดตเป็นกลุ่มจะมีผลอย่างสมบูรณ์ นั่นคือ หากคำขอใดคำขอหนึ่งในชุดไม่สำเร็จ การอัปเดตทั้งหมดจะไม่สำเร็จและระบบจะไม่ใช้การเปลี่ยนแปลงใดๆ (ที่อาจขึ้นอยู่กับคำขอที่ไม่สำเร็จ) ป้ายกำกับจะยังคงเหมือนเดิม
หากการอัปเดตสำเร็จ คุณต้องเผยแพร่การแก้ไขฉบับร่างที่ได้ก่อนจึงจะใช้การเปลี่ยนแปลงกับรายการใน Google ไดรฟ์ ได้
อัปเดตออบเจ็กต์ป้ายกำกับ
ป้ายกำกับมีออบเจ็กต์ประเภทอื่นๆ อีกมากมายที่อัปเดตได้ เช่น
Propertiesของป้ายกำกับ- ออบเจ็กต์
Fieldและประเภทฟิลด์ ChoiceของการเลือกและPropertiesของตัวเลือกการเลือก
นี่เป็นเพียงออบเจ็กต์บางส่วนจากออบเจ็กต์มากมายที่ควบคุมลักษณะที่ปรากฏและการทำงานของป้ายกำกับ
หมวดหมู่การดำเนินการ
การดำเนินการต่อไปนี้ที่
deltaเมธอดใน
labelsทรัพยากรรองรับสามารถ
จัดกลุ่มเป็นหมวดหมู่กว้างๆ ได้ดังนี้
| หมวดหมู่ | คำอธิบาย |
|---|---|
| สร้าง | เพิ่มออบเจ็กต์ |
| อัปเดต | อัปเดตพร็อพเพอร์ตี้บางอย่างของออบเจ็กต์ |
| เปิดใช้ | เปิดใช้ออบเจ็กต์ |
| ปิดใช้ | ปิดใช้ออบเจ็กต์ |
| ลบ | นำออบเจ็กต์ออก |
เราจะใช้หมวดหมู่เหล่านี้ในส่วนถัดไปเพื่ออธิบายลักษณะการทำงานของการดำเนินการที่เฉพาะเจาะจง
คำขออัปเดต
เมธอด delta ทำงานโดยใช้
Request
object อย่างน้อย 1 รายการ ซึ่งแต่ละรายการจะระบุคำขอประเภทเดียวที่จะดำเนินการ คำขอมีหลายประเภท ต่อไปนี้คือรายละเอียดเกี่ยวกับประเภทคำขอที่จัดกลุ่มเป็นหมวดหมู่ต่างๆ
| Request object | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| พร็อพเพอร์ตี้ของป้ายกำกับ |
|
||||||||||
| ฟิลด์ |
|
||||||||||
| ตัวเลือกการเลือก |
|
||||||||||
ฟิลด์มาสก์
คำขอประเภท "อัปเดต" และ "ปิดใช้" หลายรายการต้องใช้
FieldMask
ซึ่งเป็นรายการฟิลด์ที่คั่นด้วยคอมมาที่คุณต้องการอัปเดตโดยไม่เปลี่ยนแปลงฟิลด์อื่นๆ คุณต้องใช้มาสก์เพื่อให้แน่ใจว่าระบบจะอัปเดตเฉพาะฟิลด์ที่คุณต้องการแก้ไข โดยต้องระบุฟิลด์อย่างน้อย 1 รายการ
ตัวอย่าง
หากต้องการอัปเดตป้ายกำกับ ให้ใช้เมธอด
delta ในทรัพยากร
labels
นอกจากนี้ คุณยังต้องระบุสิ่งต่อไปนี้ด้วย
ตั้งค่าพารามิเตอร์การค้นหา
useAdminAccessเป็นtrueเพื่อใช้ข้อมูลเข้าสู่ระบบของผู้ดูแลระบบของผู้ใช้ ก่อนอนุญาตให้เข้าถึง เซิร์ฟเวอร์จะตรวจสอบว่าผู้ใช้มี สิทธิ์ของผู้ดูแลระบบที่จำเป็นในการจัดการป้ายกำกับการจัดประเภทA
Requestที่ระบุการอัปเดตที่เกี่ยวข้องกับป้ายกำกับป้ายกำกับ
titleผ่านออบเจ็กต์Propertiesออบเจ็กต์อย่างน้อย 1 รายการ
Fieldทรัพยากร
labelsที่ แสดงถึงป้ายกำกับ ซึ่งมีnameและidซึ่งเป็นตัวระบุที่ไม่ซ้ำกันทั่วโลกสำหรับป้ายกำกับออบเจ็กต์
LabelViewเป็นLABEL_VIEW_FULLเพื่อตั้งค่ามุมมองทรัพยากรที่จะใช้กับการตอบกลับของป้ายกำกับLABEL_VIEW_FULLจะแสดงผลฟิลด์ที่เป็นไปได้ทั้งหมด
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ id ของป้ายกำกับเพื่ออัปเดตป้ายกำกับที่ถูกต้อง
Python
body = {
'useAdminAccess': True,
'requests': [
{
'updateLabel': {
'properties': {
'title': 'TITLE'
},
'updateMask': 'title'
}
},
{
'createField': {
'field': {
'properties': {
'displayName': 'DISPLAY_NAME'
},
'textOptions': {}
}
}
}
],
'view': 'LABEL_VIEW_FULL'
}
response = service.labels().delta(
body=body,
name='labels/ID'
).execute()
Node.js
var body = {
'useAdminAccess': true,
'requests': [
{
'updateLabel': {
'properties': {
'title': 'TITLE'
},
'updateMask': 'title'
}
},
{
'createField': {
'field': {
'properties': {
'displayName': 'DISPLAY_NAME'
},
'textOptions': {}
}
}
}
],
'view': 'LABEL_VIEW_FULL'
};
service.labels.delta({
name: 'labels/ID',
requestBody: body
}, (err, res) => {
if (err) return console.error('The API returned an error: ' + err);
console.log(res);
});
แทนที่ค่าต่อไปนี้
- TITLE: ชื่อป้ายกำกับ
- DISPLAY_NAME: ชื่อที่แสดงของฟิลด์
- ID: รหัสของป้ายกำกับ
ระบบจะอัปเดตป้ายกำกับ ฟิลด์ หรือตัวเลือก เพิ่มรหัสการแก้ไขของป้ายกำกับ และจัดเก็บป้ายกำกับในฐานข้อมูลเป็นป้ายกำกับฉบับร่าง ป้ายกำกับจะมี
Stateเป็นPUBLISHED
โดยตั้งค่า
hasUnpublishedChanges
เป็นtrueซึ่งหมายความว่ามีการเปลี่ยนแปลงฉบับร่าง แต่ผู้ใช้ยังไม่เห็น
ป้ายกำกับที่อัปเดตแล้วต้องมีสถานะเป็น PUBLISHED ก่อนที่ผู้ใช้จะเห็นการเปลี่ยนแปลง ดูข้อมูลเพิ่มเติมได้ที่ ป้ายกำกับ
วงจรการใช้งาน