Как написать старые запросы в новом синтаксисе Gremlin 3.x в javascript/typescript

Мне нужно писать старые запросы из синтаксиса Gremlin с 2.6 по 3.4 в JS/TS, потому что в 2.6 я все делал со строками, а затем выполняю эту строку, но теперь я хочу использовать синтаксис 3.4, где я могу использовать методы цепочки.

Сначала мне нужно преобразовать этот запрос, но я не знаю, что делать с этими вложенными запросами. out().simplePath() а также label().is('Recording'),

g.V().repeat(out().simplePath()).until(label().is('Recording'))

Я думаю, что-то вроде этого, но я не уверен, что это правильно.

g.V().repeat(g.V().out().simplePath()).until(g.V().label().is('Recording'));

Также нет больше между функцией в gremlin, так как я могу получить тот же результат для этой старой функции, а также записать это в JS / TS? (Это только часть запроса)

.has('name', between('${partialPropertyName}', '${partialPropertyName}a'))

Спасибо, ребята впереди.

1 ответ

Решение

Пара быстрых ответов.

Еще есть between() Предикат в Гремлин. Я не знаю, поддерживает ли база данных, которую вы используете, или нет.

Для вашего повторения, пока вы не можете просто сделать

g.V().repeat(out().simplePath()).until(hasLabel('Recording'))

В документах TinkerPop есть хорошие примеры всех этих шагов. Я бы рекомендовал быстро прочитать документы. Также не стесняйтесь делать поиск по "Практическому Гремлину". У меня есть несколько примеров.

Отредактировано, чтобы добавить пример импорта JavaScript

const gremlin = require('gremlin');
const Graph = gremlin.structure.Graph;
const __ = gremlin.process.statics;
const { t: { id },order,cardinality } = gremlin.process;

Отредактировано еще раз, чтобы указать, что есть index.js файл в корневом каталоге gremlin пакет, который npm install gremlin создает. Вы также можете найти этот файл в репозитории TinkerPop GitHub.

Ура Кельвин

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