Yeni bir taslak düzeltmeyle sonuçlanan bir dizi güncelleme isteği uygulayarak tek bir etiketi güncelleyebilirsiniz. Örneğin, mevcut bir etiket ö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 delta
yöntemini labels
koleksiyonunda 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.Etikete uygulanacak güncellemeleri belirten bir
Request
.property
yöntemiyletitle
etiketi.Bir veya daha fazla
Field
.Her etiketi temsil eden bir Etiket kaynağı. Bir kaynak
Name
veID
içerir. Bu, etiket için genel olarak benzersiz bir tanımlayıcıdır.LabelView
isLABEL_VIEW_FULL
, etiket yanıtlarına uygulanan Kaynak görünümünü ayarlamak için kullanılır.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.