您可以通过应用一组更新请求来更新单个标签,
新的草稿修订版本。例如,您可以更新现有标签
属性(即标签
说明),也可以添加新的
Field
。
标签更新会进行批量更新,因为该方法会获取更新列表
Request
对象。它
按照批量请求中指定的相同顺序进行更新。通过
批量更新中的更新以原子方式应用。也就是说,如果
批量更新失败,则整个更新会失败,
(潜在的相关更改)。标签保持不变。
如果更新成功,则必须发布生成的草稿修订版本 然后才能将更改用于任何云端硬盘内容。
更新标签对象
标签包含许多其他可以更新的对象类型,例如:
- 标签属性
- 字段和字段类型
- 选择选项和选择选项属性
这些对象是用于控制网页外观和操作的众多对象的一部分, 标签。
操作的类别
以下操作受
labels.delta
方法可以是
可分为以下几大类:
类别 | 说明 |
---|---|
创建 | 添加对象。 |
更新 | 更新对象的特定属性。 |
启用 | 启用对象。 |
停用 | 停用对象。 |
删除 | 移除对象。 |
下一部分将使用这些类别来描述 特定操作
更新请求
labels.delta
方法的工作原理
学习一个或多个
Request 对象,每个
用于指定要执行的一种请求类型有很多不同的
各种请求类型下面按请求类型细分为
不同类别。
字段掩码
许多“更新”和“停用”类型请求需要
FieldMask
。
这是您要更新的字段列表(以英文逗号分隔),同时保留
其他字段保持不变。请务必设置掩码,以确保
要更新的用户你必须至少指定一个字段。
示例
要更新标签,请使用
delta
方法
“labels
”集合。
您还必须指定以下内容:
useAdminAccess
为true
,以使用用户的管理员凭据。通过 服务器在允许前验证用户是否是该标签的管理员 访问权限。一个
Request
, 用于指定标签的适用更新。标签
title
通过property
方法。一个或多个
Field
。标签资源 来代表每个标签。它包含一个资源
Name
和ID
, 是标签的全局唯一标识符。LabelView
为LABEL_VIEW_FULL
,用于设置应用于标签响应的资源视图。LABEL_VIEW_FULL
会返回所有可能的字段。
此示例使用 ID
更新正确的标签。
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);
});
标签、字段或选择会更新,标签的修订 ID 也随之递增,
并且该标签作为草稿标签存储在数据库中。标签包含
第 State
行(共 PUBLISHED
行),其中有
hasUnpublishedChanges=true
表示有草稿更改,但并未更改
提供给用户使用更新后的标签必须处于 PUBLISHED
状态,然后才会有更改
显示给用户有关详情,请参阅标签
生命周期。