如何使用Highrise Ruby gem添加Person?

时间:2012-08-10 13:31:34

标签: ruby highrise

我正在尝试使用https://github.com/tapajos/highrise/在用户注册应用时更新用户帐户。但是我没有走得太远。

我正在控制台:

person = Highrise::Person.create(:name => "charlie")

哪个可以保存,但是如果我做的话

person = Highrise::Person.create(:name => "charlie", :email => "charlie@222.com")

然后我得到:

Unprocessable Entity

我无法理解这一点,我基本上想要添加完整的记录:

person = Highrise::Person.create(:name => "charlie", :params => {:contact_data => {:email_addresses => "charlie@222.com"}})

但我仍然得到相同的错误,并且无法在线找到任何示例

1 个答案:

答案 0 :(得分:6)

你最后一次尝试是在正确的轨道上。试一试:

person = Highrise::Person.create(
    :first_name => "Charlie", :last_name => "Bravo",
    :contact_data => {
      :email_addresses => [{
        :email_address => {:address => "charlie@222.com"}
      }]
    }
  )

这与Highrise API中定义的创建人员请求的结构相匹配。 https://github.com/37signals/highrise-api/blob/master/sections/people.md#create-person

另外,您可以参考ruby api的测试规范以获取更多示例https://github.com/tapajos/highrise/blob/f44cb3212c6d49549330c46454fe440ac117fa1b/spec/highrise/person_spec.rb#L40