Элемент "код"

Следующий элемент n8n, который мы с вами рассмотрим - это элемент "код". Набираем в строку поиска "код". Этот элемент позволяет нам обрабатывать данные, которые в него поступают, с помощью языков программирования JavaScript и Python. В поле "language" выбираем язык программирования (JavaScript или Python) и пишем программный код для обработки поступающих элементов.

Режимы работы

Обратите внимание: элемент может работать в двух режимах.

Первый режим - запускаться один раз для всех элементов, которые поступают. Например, если к нему поступило три элемента на входе, он один раз проходится циклом по всем этим элементам. В этом цикле выполняются операции с этими элементами.

Второй вариант - запускать один раз для каждого элемента. В этом случае код будет выглядеть без цикла, но цикл как бы идёт оболочкой для этого элемента. Если мы запустим выполнение этого кода, получим то же самое на выходе - три элемента. Здесь мы как бы убираем конструкцию for, которая обеспечивает цикл по всем элементам, поступившим на вход, и просто выдаёт результат.

При работе во втором режиме нужно иметь в виду, что мы работаем с конструкцией for, которая является оболочкой для этого элемента. Когда нам нужно обработать каждый элемент и упростить логику, можем воспользоваться таким случаем. Соответственно здесь пишем ту логику, которую хотим использовать.

Работа с элементами

К сожалению, перетянуть элемент здесь не получится. Нужно прописывать выражение для доступа к каждому элементу вручную. Обратите внимание, что для доступа к какому-то полю используется ключ JSON. Например, мы хотим изменить поле name на другое значение для каждого элемента.

Обратите внимание на подсказку: input - это входной массив данных, который поступает. item - это конкретный элемент, который обрабатывается. Этому элементу обязательно нужно указать ключ JSON. Для всех элементов, которые поступают, установим ключ name равным единице. Выполняем этот шаг. Теперь для всех элементов выставлен этот ключ.

Если мы работаем в режиме "запускать один раз для всех элементов", то точно так же здесь можем прописать ключ name и произвести какие-то действия с этим ключом.

Возможности языка программирования

В элементе "код" можем использовать все конструкции языка программирования JavaScript или Python:

  • условные операторы
  • циклы
  • другие конструкции языка

Вот это основа работы с элементом "код". Если вам не хватает какой-то логики, какого-то элемента, или вы не знаете, как это сделать по-другому без программного кода, можете написать свой кастомный обработчик, который будет работать на выбранном языке программирования.