Skip to main content

数组

数组是一种用于保存数据列表的数据类型。

💡 常用数组 Usage

例如,数组属性类型可被用于来存储任何数据列表:

  • 被用于的软件包
  • 依赖关系
  • 徽章

live demo 这个示例中,我们可以看到 Monitor Tooling 数组属性。

应用程序接口定义

{
"myArrayProp": {
"title": "My array",
"icon": "My icon",
"description": "My array property",
"type": "array",
"default": [1, 2, 3]
}
}

Check out Port's API reference to learn more.

Terraform 定义

resource "port_blueprint" "myBlueprint" {
# ...blueprint properties
properties = {
array_props = {
"myArrayProp" = {
title = "My array"
required = true
}
}
}
}
要设置数组属性的类型,需要使用 <type>_items 属性类型。例如,要设置字符串数组,需要使用 string_items 属性类型。
resource "port_blueprint" "myBlueprint" {
# ...blueprint properties
properties = {
array_props = {
"myArrayProp" = {
title = "My array"
required = true
string_items = {} # You can also set here default values
}
}
}
}

我们目前支持以下类型的数组项: string_items, number_items, boolean_items, object_items

Pulumi 的定义

"""A Python Pulumi program"""

import pulumi
from port_pulumi import Blueprint,BlueprintPropertiesArgs,BlueprintPropertyArgs

blueprint = Blueprint(
"myBlueprint",
identifier="myBlueprint",
title="My Blueprint",
properties=BlueprintPropertiesArgs(
array_props={
"myArrayProp": BlueprintPropertyArgs(
title="My array", required=True,
)
}
),
relations=[]
)

验证数组

数组验证支持以下操作符:

  • 最小项目
  • 最大项目
  • 唯一项目
数组验证遵循 JSON 模式模型,请参阅JSON schema docs 了解所有可用的验证。
{
"myArrayProp": {
"title": "My array",
"icon": "My icon",
"description": "My array property",
"type": "array",
"minItems": 0,
"maxItems": 5,
"uniqueItems": false
}
}