更新模板

描述

object template.update(object/array templates)

此方法允许更新现有模板。

此方法仅适用于管理员超级管理员用户类型。可以在用户角色设置中撤销调用该方法的权限。 详情请阅 User roles

参数

(object/array) 要更新的模板属性。

必须为每个模板定义templateid属性,其他所有属性都是可选的。只有给定的属性将被更新,所有其他属性将保持不变。

除了标准模版属性,该方法接受以下参数。

参数类型描述
groupsobject/array用于替换模板所属的当前主机组的主机群组

主机组必须定义groupid属性。
tagsobject/array替换当前模板标记的模板标签
macrosobject/array用户宏替换给定模板上的当前用户宏
templatesobject/array替换当前链接的模板的模版。未传递的模板仅被取消链接。

模板必须定义templateid属性。
templates_clearobject/array取消链接并清除给定模板的模版

模板必须定义templateid属性。

返回值

(object) 返回一个对象,该对象包含templateids属性下已更新模板的ID。

示例

重命名一个模版

将模板重命名为“template OS Linux”。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "template.update",
  4. "params": {
  5. "templateid": "10086",
  6. "name": "Template OS Linux"
  7. },
  8. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  9. "id": 1
  10. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "templateids": [
  5. "10086"
  6. ]
  7. },
  8. "id": 1
  9. }

更新模版标签

用新的模板标签替换所有模板标签。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "template.update",
  4. "params": {
  5. "templateid": "10086",
  6. "tags": [
  7. {
  8. "tag": "Host name",
  9. "value": "{HOST.NAME}"
  10. }
  11. ]
  12. },
  13. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  14. "id": 1
  15. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "hostids": [
  5. "10086"
  6. ]
  7. },
  8. "id": 1
  9. }

源码

CTemplate::update() in ui/include/classes/api/services/CTemplate.php.