我有一个基本的社交网络。我正在尝试创建一个返回用户数组的朋友方法。有些user :ids
在:user_id
属性中,有些在:friend_id
属性中。我不想退货current_user.id
。我只想返回:name
,:id
和:uid
属性。我不知道从这里去哪里。
我希望我足够简化,如果我的问题缺少信息,请告诉我。
谢谢!
class User < ActiveRecord::Base
has_many :friendships, :conditions => {:accepted => true}
has_many :inverse_friendships, :class_name => "Friendship", :foreign_key => "friend_id", :conditions => {:accepted => true}
attr_accessible :name, :oauth_expires_at, :oauth_token, :provider, :uid
def friends
friendships.preload(:friend) + inverse_friendships.preload(:user)
end
end
class Friendship < ActiveRecord::Base
belongs_to :user
belongs_to :friend, :class_name => "User"
attr_accessible :accepted, :friend_id, :user_id, :friend
end