更新

说明

object dashboard.update(object/array dashboards)

此方法用于更新已有仪表盘。

此方法任何类型的用户都可以使用。可以在用户角色设置中撤销用户调用该方法的权限。更多信息请查看用户角色

参数

(object/array) 仪表盘需要被更新的属性。

请求中必须传入 dashboardid 属性,除此之外的其他属性都是可选的。只有请求中定义的属性会被更新,其他属性都不会被更新。

除了标准仪表盘属性,此方法还接受以下参数:

参数 类型 说明
pages array 用于替换现有仪表盘页面的仪表盘页面对象。

仪表盘页面通过 dashboard_pageid 属性进行更新。
若未传入 dashboard_pageid 属性,则会创建一个新的仪表盘页面。
未使用的仪表盘页面(即 pages 中不包含的仪表盘页面对象)会被删除。
仪表盘页面的顺序与请求中指定的顺序相同。
只有仪表盘页面对象中包含的仪表盘页面属性会被更新。
users array 用于替换现有仪表盘用户的仪表盘用户对象。
userGroups array 用于替换现有仪表盘用户组的仪表盘用户组对象。

返回值

(object) 返回一个对象,该对象包含 dashboardids 属性, 代表被更新的仪表盘的 ID。

示例

重命名仪表盘

将仪表盘重命名为:"SQL server status"。

请求:

{
    "jsonrpc": "2.0",
    "method": "dashboard.update",
    "params": {
        "dashboardid": "2",
        "name": "SQL server status"
    },
    "id": 1
}

响应:

{
    "jsonrpc": "2.0",
    "result": {
        "dashboardids": [
            "2"
        ]
    },
    "id": 1
}

更新仪表盘页面

此请求包含以下操作:

  • 1、重命名第一个仪表盘页面;
  • 2、替换第二个仪表盘页面的组件;
  • 3、新增一个仪表盘页面作为第三个仪表盘页面;
  • 4、删除其他所有仪表盘页面。

请求:

{
    "jsonrpc": "2.0",
    "method": "dashboard.update",
    "params": {
        "dashboardid": "2",
        "pages": [
            {
                "dashboard_pageid": 1,
                "name": "Renamed Page"
            },
            {
                "dashboard_pageid": 2,
                "widgets": [
                    {
                        "type": "clock",
                        "x": 0,
                        "y": 0,
                        "width": 12,
                        "height": 3
                    }
                ]
            },
            {
                "display_period": 60
            }
        ]
    },
    "id": 1
}

响应:

{
    "jsonrpc": "2.0",
    "result": {
        "dashboardids": [
            "2"
        ]
    },
    "id": 1
}

修改仪表盘所有者

此请求只允许管理员和超级管理员发起。

请求:

{
    "jsonrpc": "2.0",
    "method": "dashboard.update",
    "params": {
        "dashboardid": "2",
        "userid": "1"
    },
    "id": 1
}

响应:

{
    "jsonrpc": "2.0",
    "result": {
        "dashboardids": [
            "2"
        ]
    },
    "id": 1
}

参考

来源

ui/include/classes/api/services/CDashboard.php 中的 CDashboard::update()