我是铁轨初学者的红宝石。
我有两个具有一对多关系的模型,我想从followers_id
模型中获取relationships
并显示followers
信息
model1
Users -> has_many
id firstname lastname....
1 sample
model2
Relationships -> belongs_to
user_id follower_id following_id
1 2
1 3
我尝试在(rails console)中使用rails的'pluck'方法
u = Users.find(1)
r = u.relationships.pluck(:follower_id)
//gives me a array of id
但我不知道如何使用这些id数组来获取followers
信息(名字,姓氏)
有人可以指导我..
有没有更好的方法来获取粉丝信息。
提前致谢:)
答案 0 :(得分:1)
好的,你基本上需要的是将用户与追随者连接通过关系这样做:
class User < ActiveRecord::Base
has_many :relationships
has_many :followers, through: :relationships
end
class Relationship < ActiveRecord::Base
belongs_to :user
belongs_to :follower
end
之后你可以user.followers
答案 1 :(得分:0)
基于您的模型关系
@user = Users.find(1)
@follower_ids = @user.relationships.pluck(:follower_id)
您可以在@followers_ids
中获得所有关注者ID@followers = User.where("id in (?)", @followers_id)
您可以获得@followers
变量