Yeni bir taslak düzeltmeyle sonuçlanan bir dizi güncelleme isteği uygulayarak tek bir etiketi güncelleyebilirsiniz. Örneğin, mevcut bir etiketi
özelliğini (etiket açıklaması) güncelleyebilir veya etikete yeni bir
Field ekleyebilirsiniz.
Yöntem, güncelleme Request nesnelerinin listesini aldığından etiket güncellemesi toplu güncelleme olarak işlev görür. Toplu istekte belirtilen sıraya göre güncellemeler yapar. Toplu güncellemedeki güncellemeler atomik olarak uygulanır. Yani, toplu işlemdeki herhangi bir istek başarısız olursa güncellemenin tamamı başarısız olur ve (potansiyel olarak bağımlı) değişikliklerin hiçbiri uygulanmaz. Etiket değiştirilmez.
Güncelleme başarılı olursa değişikliklerin herhangi bir Drive öğesiyle kullanılabilmesi için ortaya çıkan taslak düzeltmenin yayınlanması gerekir.
Etiket nesnelerini güncelleme
Bir etiket, güncellenebilecek birçok başka nesne türü içerir. Örneğin:
- Etiket Özellikleri
- Alanlar ve Alan Türleri
- Seçim tercihleri ve seçim tercihi özellikleri
Bunlar, bir etiketin görünümünü ve çalışmasını kontrol eden birçok nesneden bazılarıdır.
İşletim kategorileri
labels.delta yöntemiyle desteklenen aşağıdaki işlemler, aşağıdaki geniş kategorilerde gruplandırılabilir:
| Kategori | Açıklama |
|---|---|
| Oluştur | Nesne ekleyin. |
| Güncelle | Bir nesnenin belirli özelliklerini güncelleme |
| Etkinleştir | Nesneleri etkinleştirin. |
| Devre dışı bırak | Nesneleri devre dışı bırakın. |
| Sil | Nesneleri kaldırın. |
Bu kategoriler, belirli işlemlerin davranışını açıklamak için sonraki bölümde kullanılmaktadır.
Güncelleme istekleri
labels.delta yöntemi, her biri gerçekleştirilecek tek bir istek türünü belirten bir veya daha fazla Request nesnesi alarak çalışır. Birçok farklı türde istek vardır. Aşağıda, farklı kategorilerde gruplandırılmış talep türleriyle ilgili bir döküm verilmiştir.
| İstek türü | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Etiket Özellikleri |
|
||||||||||
| Alan |
|
||||||||||
| Seçim Seçeneği |
|
||||||||||
Alan maskeleri
"Güncelle" ve "Devre dışı bırak" türündeki isteklerin çoğu için FieldMask gerekir.
Bu, diğer alanları değiştirmeden güncellemek istediğiniz alanların virgülle ayrılmış listesidir. Yalnızca düzenlemek istediğiniz alanların güncellendiğinden emin olmak için maske gereklidir. En az bir alan belirtmelisiniz.
Örnek
Bir etiketi güncellemek için labels koleksiyonunda delta yöntemini kullanın.
Ayrıca şunları da belirtmeniz gerekir:
useAdminAccess, kullanıcının yönetici kimlik bilgilerini kullanmak içintrue. Sunucu, erişime izin vermeden önce kullanıcının etiket yöneticisi olduğunu doğrular.Etiketle ilgili geçerli güncellemeleri belirten bir
Request.propertyyöntemiyletitleetiketi.Bir veya daha fazla
Field.Her etiketi temsil eden bir etiket kaynağı. Bir kaynak
NameveIDiçerir. Bu, etiket için genel olarak benzersiz bir tanımlayıcıdır.LabelView, etiket yanıtlarına uygulanan Kaynak görünümünü ayarlamak içinLABEL_VIEW_FULL'dir.LABEL_VIEW_FULL, olası tüm alanları döndürür.
Bu örnekte, doğru etiketi güncellemek için ID kullanılır.
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);
});
Etiket, alan veya seçim güncellenir, etiketin düzeltme kimliği artırılır ve etiket, veritabanında taslak etiket olarak saklanır. Etikette PUBLISHED ile State simgesi bulunur. hasUnpublishedChanges=true, taslak değişiklikler olduğu ancak bunların kullanıcılar tarafından kullanılamadığı anlamına gelir. Değişikliklerin kullanıcılara görünür hale gelmesi için güncellenen etiket PUBLISHED olmalıdır. Daha fazla bilgi için Etiket yaşam döngüsü konusuna bakın.