Bạn có thể cập nhật một nhãn bằng cách áp dụng một nhóm yêu cầu cập nhật để tạo ra bản sửa đổi nháp mới. Ví dụ: bạn có thể cập nhật một thuộc tính nhãn hiện có
(nội dung mô tả nhãn
) hoặc thêm một
Field mới vào nhãn.
Tính năng cập nhật nhãn hoạt động như một bản cập nhật theo lô vì phương thức này lấy một danh sách các đối tượng cập nhật
Request. Tính năng này thực hiện các bản cập nhật theo cùng một thứ tự được chỉ định trong yêu cầu hàng loạt. Các bản cập nhật trong bản cập nhật theo lô được áp dụng một cách nguyên tử. Tức là nếu bất kỳ yêu cầu nào trong lô không thành công, thì toàn bộ bản cập nhật sẽ không thành công và không có thay đổi nào (có khả năng phụ thuộc) được áp dụng. Nhãn vẫn không thay đổi.
Nếu bản cập nhật thành công, bạn phải phát hành bản sửa đổi nháp kết quả trước khi có thể sử dụng các thay đổi đó với bất kỳ mục nào trên Drive.
Cập nhật đối tượng nhãn
Một nhãn bao gồm nhiều loại đối tượng khác có thể được cập nhật, chẳng hạn như:
- Thuộc tính nhãn
- Trường và loại trường
- Lựa chọn và thuộc tính lựa chọn
Đây là một số trong số nhiều đối tượng kiểm soát giao diện và hoạt động của nhãn.
Danh mục hoạt động
Các thao tác sau đây được phương thức
labels.delta hỗ trợ có thể được
nhóm thành các danh mục lớn sau:
| Danh mục | Mô tả |
|---|---|
| Tạo | Thêm đối tượng. |
| Cập nhật | Cập nhật một số thuộc tính của đối tượng. |
| Bật | Bật đối tượng. |
| Tắt | Tắt đối tượng. |
| Xoá | Xoá đối tượng. |
Các danh mục này được sử dụng trong phần tiếp theo để mô tả hành vi của các thao tác cụ thể.
Yêu cầu cập nhật
Phương thức labels.delta hoạt động
bằng cách lấy một hoặc nhiều
đối tượng Yêu cầu, mỗi
đối tượng chỉ định một loại yêu cầu duy nhất để thực hiện. Có nhiều loại yêu cầu khác nhau. Sau đây là thông tin chi tiết về các loại yêu cầu, được nhóm thành nhiều danh mục.
| Loại yêu cầu | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Thuộc tính nhãn |
|
||||||||||
| Trường |
|
||||||||||
| Lựa chọn |
|
||||||||||
Mặt nạ trường
Nhiều yêu cầu thuộc loại "Cập nhật" và "Tắt" yêu cầu
FieldMask.
Đây là danh sách các trường được phân tách bằng dấu phẩy mà bạn muốn cập nhật trong khi để các trường khác không thay đổi. Bạn phải có mặt nạ để đảm bảo chỉ những trường mà bạn muốn chỉnh sửa mới được cập nhật. Bạn phải chỉ định ít nhất một trường.
Ví dụ:
Để cập nhật nhãn, hãy sử dụng phương thức
delta trên tập hợp
labels.
Bạn cũng phải chỉ định:
useAdminAccesslàtrueđể sử dụng thông tin đăng nhập của quản trị viên của người dùng. Máy chủ sẽ xác minh rằng người dùng là quản trị viên của nhãn trước khi cho phép truy cập.A
Requestmà chỉ định các bản cập nhật áp dụng cho nhãn.A label
titlethông qua phương thứcproperty.Một hoặc nhiều
Field.Tài nguyên Nhãn đại diện cho mọi nhãn. Tài nguyên này chứa
NamevàID, là giá trị nhận dạng duy nhất trên toàn cầu cho nhãn.LabelViewlàLABEL_VIEW_FULLđể đặt khung hiển thị Tài nguyên được áp dụng cho các phản hồi nhãn.LABEL_VIEW_FULLtrả về tất cả các trường có thể có.
Ví dụ này sử dụng ID để cập nhật nhãn chính xác.
Python
body = {
'use_admin_access': True,
'requests': [{
'update_label': {
'properties': {
'title': 'TITLE'
},
'update_mask': {
'paths': ['title']
}
},
}, {
'create_field': {
'field': {
'properties': {
'display_name': 'DISPLAY_NAME'
},
'text_options': {}
}
}
}],
'view': 'LABEL_VIEW_FULL'
}
response = service.labels().delta(
body=body,
name='labels/ID').execute()
Node.js
var body = {
'use_admin_access': true,
'requests': [{
'update_label': {
'properties': {
'title': 'TITLE'
},
'update_mask': {
'paths': ['title']
}
},
}, {
'create_field': {
'field': {
'properties': {
'display_name': 'DISPLAY_NAME'
},
'text_options': {}
}
}
}],
'view': 'LABEL_VIEW_FULL'
};
service.labels.delta({
'resource': body,
'name': 'labels/ID'
}, (err, res) => {
if (err) return console.error('The API returned an error: ' + err);
console.log(res);
});
Nhãn, trường hoặc lựa chọn được cập nhật, mã sửa đổi của nhãn được tăng lên và nhãn được lưu trữ trong cơ sở dữ liệu dưới dạng nhãn nháp. Nhãn có
State là PUBLISHED với
hasUnpublishedChanges=true, nghĩa là có các thay đổi nháp nhưng người dùng không thể sử dụng. Nhãn được cập nhật phải là PUBLISHED thì các thay đổi mới hiển thị với người dùng. Để biết thêm thông tin, hãy xem Vòng đời
của nhãn.