Gremlin свойство математика на одной вершине

Я пытаюсь выполнить некоторую математику со свойствами вершины. Мое решение работает в консоли Gremlin, но выдает ошибку при запуске в JavaScript.

gremlin> g.addV("trip").property(single, "trackLength", 100).property(single, "travelDistance", 75).property(single, "carWeight", 10)

==>v[f8b42b9d-9053-2838-808d-ba14606b8390]

gremlin> g.V("f8b42b9d-9053-2838-808d-ba14606b8390").property(single, "carFactor", __.project("trackLength", "travelDistance", "carWeight").by("trackLength").by("travelDistance").by("carWeight").math("(trackLength - travelDistance) * carWeight")).valueMap()

Я получаю ожидаемый результат при запуске в консоли:

==>{trackLength=[100], travelDistance=[75], carWeight=[10], carFactor=[250.0]}

Однако, когда я запускаю это в JS, я получаю ошибку:

Ошибка типа: __. Project(...). By(...). By(...). By(...). Math не является функцией

Гремлин версия 3.2.10, Я пытался обновить до ^3.4.0 но я столкнулся с отдельной проблемой, рассмотренной здесь.

1 ответ

Решение

math() Шаг был введен только в 3.3.1, поэтому, если вы используете 3.2.10, это не сработает. Возможно, попробуйте 3.3.5 и посмотреть, если math() работает там.

Другие вопросы по тегам