我正在Ruby on Rails 3中开发一个API,在这个API中我得到了用户,用户可以成为朋友。这是通过联系人处理的。当一个用户"询问"他或她的所有联系人时,我创建一个数组,该数组接受每个用户的ID并获取他们的user对象,以便我可以获得联系人的真实姓名,而不仅仅是联系人ID。
这工作得很好,但我还需要联系人的ID,以便我可以在我正在开发的iPhone应用程序中删除联系人。我该怎么做呢?如何修改下面的代码以获得每个用户和用户对象的联系人ID ?
http://pastie.org/1847350当前JSON输出为pastie.org/1848590。我希望联系人id是主用户对象数组的子数组。就像最新的消息是现在。
感谢所有的输入!
联系人也是用户,我认为您只需要创建一个用户模型并添加一个带有class_name: " Contact "的自关联,这个关系将是一对多关系,一个用户有许多联系人。
has_many :contacts, class: "contacts", foreign_key: "contact_id"
http://railscasts.com/episodes/163-self-referential-association
在关联之后你只需要找到那个用户然后只需要
@users.collect{|user| user.contacts }
返回我认为可能对您有帮助的联系人列表。
欢呼