当人们注册应用程序时,我正在尝试使用https://github.com/tapajos/highrise/来更新用户帐户.但是我没有走得太远.
在控制台我正在做:
person = Highrise::Person.create(:name => "charlie")
Run Code Online (Sandbox Code Playgroud)
哪个节省很好,但如果我做了类似的事情
person = Highrise::Person.create(:name => "charlie", :email => "charlie@222.com")
Run Code Online (Sandbox Code Playgroud)
然后我得到:
Unprocessable Entity
Run Code Online (Sandbox Code Playgroud)
我无法理解这一点,我基本上想要添加一个完整的记录:
person = Highrise::Person.create(:name => "charlie", :params => {:contact_data => {:email_addresses => "charlie@222.com"}})
Run Code Online (Sandbox Code Playgroud)
但我仍然得到相同的错误,在网上找不到任何例子
最后一次尝试你是在正确的轨道上.尝试一下:
person = Highrise::Person.create(
:first_name => "Charlie", :last_name => "Bravo",
:contact_data => {
:email_addresses => [{
:email_address => {:address => "charlie@222.com"}
}]
}
)
Run Code Online (Sandbox Code Playgroud)
这与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