使用 HTTParty Gem 发送数组

Sending an Array with HTTParty Gem

我正在使用 HTTParty Gem 将数据发送到 SugarCRM API。

我成功地通过 API 进行了身份验证,现在我希望通过将数据发布到 API.

来创建潜在客户

不过,我在尝试发送 name_value_pair 字段时遇到了问题,这些字段在 Sugar CRMs 文档中应该是这样发送的 --

"name_value_list" => array(
    array(
        'name' => 'last_name',
        'value' => 'Victor',
    ),

    array(
        'name' => 'phone_mobile',
        'value' => ‘9999999999’
    ),
),

正在尝试将其转换为 Ruby,这是我的要求 --

response2 = HTTParty.post(base_uri,
        body: {
          method: "set_entry",
          input_type: "JSON",
          response_type: "JSON",
          rest_data: {
            session: session_id,
            module_name: 'Leads',
            name_value_list:
              [
                [
                  'name', 'last_name'
                ],
                [
                  'value', 'Victor'
                ],
              ]
          }.to_json
        },
        debug_output: $stdout
      )

但是,CRM API returns 给我一个 500 错误。我如何构造此数组数据,使其模仿 name_value_list 字段

的 PHP 文档

我们尝试将原始字符串原样转换为 HTTParty 的字符串,即:

name_value_list:
   [
      [
         'name' => 'last_name',
         'value' => 'Victor'
      ],
   ]

我查看了 http://www.w3schools.com/php/php_arrays.asp,在 "Associative Arrays",我认为您拥有的 PHP 打算将 key/value 对作为散列而不是数组.所以我建议试试这个:

name_value_list:
   [
      {
         'name' => 'last_name',
         'value' => 'Victor'
      },
   ]

(唯一的变化是内部方括号被转换为花括号。)