Как получить более 2 свойств в пути в гремлине. - PullRequest
0 голосов
/ 09 мая 2018

Я хотел получить два свойства в качестве результатов, но я получил только одно. я использовал данный код в gremlin

  g.V().repeat(out()).until(has('title','school')).path().by('title').by('name')

как с ними обоими.

1 Ответ

0 голосов
/ 09 мая 2018

Модуляторы by() применяются циклически к объектам Path, поэтому для первого элемента в пути вы получите "заголовок", затем второй элемент получит "имя", затем третий элемент , 'заглавие'. Если вы хотите, чтобы «title» и «name» для каждой вершины пути, вам нужно указать это в одном by().

by() может принимать больше, чем просто строка (т.е. ключ свойства) в качестве значения. Это может также пройти обход, и поэтому у вас есть много вариантов, чтобы получить то, что вы хотите. Вот один из способов сделать это:

g.V().repeat(out()).until(has('title','school')).
  path().by(values('name','title').fold())
...