apoc.convert.toYaml

函数 Apoc 扩展

apoc.convert.toYaml(value, $config) - 将给定值序列化为 YAML 字符串

签名

apoc.convert.toYaml(value :: ANY, config = {} :: MAP) :: STRING

输入参数

名称 类型 默认

ANY

null

config

MAP

{}

配置参数

该过程支持以下配置参数

表 1. 配置参数
名称 (name) type 默认 description(描述)

disable

字符串列表

空列表

用于禁用底层所用库中默认启用的一个或多个配置。详情请参阅此处

enable

字符串列表

空列表

用于启用底层所用库中的一个或多个配置。详情请参阅此处

使用示例

我们可以转换任何值,包括节点/关系/路径的列表或映射

将映射转换为 YAML
RETURN apoc.convert.toYaml({a:42,b:"foo"}) AS value
表 2. 结果
---
a: 42
b: "foo"
c:
- 1
- 2
- 3
使用自定义特性将映射转换为 YAML
RETURN apoc.convert.toYaml({a:42,b:"foo"},
    {enable: ['MINIMIZE_QUOTES'], disable: ['WRITE_DOC_START_MARKER']}
) AS value
表 3. 结果
a: 42
b: "foo"
将节点转换为 YAML
RETURN apoc.convert.toYaml({a:42,b:"foo"},
    {enable: ['MINIMIZE_QUOTES'], disable: ['WRITE_DOC_START_MARKER']}
) AS value
表 4. 结果
---
id: "<elementID>"
type: "node"
labels:
- "Test"
properties:
  foo: 7
将节点映射转换为 YAML
CREATE (a:Test {foo: 7}), (b:Test {bar: 9})
RETURN apoc.convert.toYaml({one: a, two: b}) AS value, elementId(a) AS idA, elementId(b) AS idB
表 5. 结果
---
one:
  id: "<elementID>"
  type: "node"
  labels:
  - "Test"
  properties:
    foo: 7
two:
  id: "<elementID>"
  type: "node"
  labels:
  - "Test"
  properties:
    bar: 9
将路径转换为 YAML
CREATE p=(a:Test {foo: 7})-[r1:TEST]->(b:Baz {a:'b'})<-[r2:TEST_2 {aa:'bb'}]-(c:Bar {one:'www', two:2, three: localdatetime('2020-01-01')})
RETURN apoc.convert.toYaml(p) AS value, elementId(a) AS idTest, elementId(b) AS idBaz, elementId(c) AS idBar, elementId(r1) AS idTEST, elementId(r2) AS idTEST_2
表 6. 结果
---
- id: "<elementID>"
  type: "node"
  properties:
    foo: 7
  labels:
  - "Test"
- start:
    id: "<elementID>"
    type: "node"
    properties:
      foo: 7
    labels:
    - "Test"
  end:
    id: "<elementID>"
    type: "node"
    properties:
      a: "b"
    labels:
    - "Baz"
  id: "<elementID>"
  label: "TEST"
  type: "relationship"
- id: "%2$s"
  type: "node"
  properties:
    a: "b"
  labels:
  - "Baz"
- start:
    id: "<elementID>"
    type: "node"
    properties:
      one: "www"
      three: "2020-01-01T00:00"
      two: 2
    labels:
    - "Bar"
  end:
    id: "<elementID>"
    type: "node"
    properties:
      a: "b"
    labels:
    - "Baz"
  id: "<elementID>"
  label: "TEST_2"
  type: "relationship"
  properties:
    aa: "bb"
- id: "%3$s"
  type: "node"
# ...
© . This site is unofficial and not affiliated with Neo4j, Inc.