2011-04-29 19 views
0

我正在Ruby on Rails 3中開發一個API,並且在這個API中我得到了用戶和用戶可以成爲朋友。這是通過聯繫人處理的。當用戶「詢問」他或她的所有聯繫人時,我會創建一個數組,以獲取每個用戶的ID並獲取用戶對象,以便我可以獲取聯繫人的真實姓名,而不僅僅是聯繫人ID。Rails 3.從不同的表中獲取多種東西

這工作正常,但我也需要聯繫人的ID,以便我可以例如刪除我正在開發的iPhone應用程序中的聯繫人。我怎樣才能做到這一點?如何修改下面的代碼以獲取每個用戶和用戶對象的聯繫人ID?

http://pastie.org/1847350

UPDATE

電流JSON輸出是pastie.org/1848590。 我想讓聯繫人ID成爲主用戶對象數組的子數組。就像現在最新的消息一樣。

感謝您的所有意見!

+0

你可以把你的模型。 – Dinatih 2011-04-29 15:29:15

+0

這是聯繫人模式:http://pastie.org/1847692。這是用戶模型:http://pastie.org/1847695。 – 2011-04-29 16:03:50

+0

最後你想要什麼? ex:array [user.id,contact1.id,contact2.id ...] – Dinatih 2011-04-29 18:52:47

回答

1

聯繫人也是用戶,我想你只需要創建一個用戶模型並添加一個與class_name:「contact」的自聯繫,並且這種關係將是一個用戶has_many聯繫人的一對多關係。

has_many :contacts, class: "contacts", foreign_key: "contact_id"  

下面是投給了這個

http://railscasts.com/episodes/163-self-referential-association 

的關聯後,你只需要找到該用戶,然後就

@users.collect{|user| user.contacts } 

回報你,我認爲這可能聯繫人列表幫你。

乾杯

相關問題