Вернуть непарсированный список словарей в Zapier Code - PullRequest
0 голосов
/ 08 июня 2018

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

"managers": [
   {
      "full_name": “Manager One“,
      "email": “managerone@gmail.com”,
      "address": “111 Manager St“,
      "city_st_zip": “Manager, Texas 11111”
    }, 
   {
      "full_name": “Manager Two“,
      "email": “managertwo@gmail.com”,
      "address": “222 Manager St“,
      "city_st_zip": “Manager, Texas 22222”
    }
]

Шаг кода работает просто отлично, и я подтвердил, что он возвращает то, что я хочу.Проблема в том, что мне нужно внедрить его в какой-то JSON, который я форматирую для отправки в другое место через webhook.Я ожидал, что на шаге кода будет готов блок кода, который я могу просто вставить в пользовательский веб-запрос, например:

{
      "name": “ABC Company”,
      "managers": [
       {
          "full_name": “Manager One“,
          "email": “managerone@gmail.com”,
          "address": “111 Manager St“,
          "city_st_zip": “Manager, Texas 11111”
        }, 
       {
          "full_name": “Manager Two“,
          "email": “managertwo@gmail.com”,
          "address": “222 Manager St“,
          "city_st_zip": “Manager, Texas 22222”
        }
      ],
      "members": [
        {
          "full_name": “Member One”,
          "email": “memberone@gmail.com”,
          "address": “111 Member St“,
          "city_st_zip": “Member, Texas 11111”
          "invested": 100,
          "stake": 50
        },
        {
          "full_name": “Member Two”,
          "email": “membertwo@gmail.com”,
          "address": “222 Member St”,
          "city_st_zip": “Member Texas 22222”
          "invested": 100,
          "stake": 50
        }
      ],
      "taxes_manager": “Taxes Manager“,
      "business_purpose": “make money“,
      "principal_office_street": “123 Main St”,
      "principal_office_city_st_zip": “Principal, Texas 78701“,
      "state": "TX",
  }

Проблема в том, что Zapier вместо этого разбирает список словарей на отдельные переменные.просто дать мне весь блок кода, как показано здесь

enter image description here

Как мне вставить список словарей в JSON, как мне нужно?

1 Ответ

0 голосов
/ 09 июня 2018

Дэвид здесь, из команды Zapier Platform.Отличный вопрос!

У вас есть два основных варианта:

  1. Выполните запрос в самом шаге кода.Здесь есть документы .Это здорово, потому что функциональная статистика вместе, и легко устранить неполадки
  2. Вместо того, чтобы возвращать managers, вернуть {"payload": json.dumps(managers)}, который вернет строку вместо объекта.Мы не делаем никакой дополнительной обработки строк, поэтому вы можете использовать ее на другом этапе. Обратите внимание , что если вы сделаете это, следующим шагом должен быть Пользовательский запрос , а не POST (потому что последний предупреждает о том, что туда не следует помещать необработанные строки JSON, поскольку мы анализируем его снова).

Обе эти опции имеют одинаковый эффект, хотя # 2 обойдется вам дополнительной задачей при вашем использовании.В зависимости от того, насколько вы близки к пределам, это может иметь или не иметь значения.

Дайте мне знать, если у вас есть другие вопросы!

...