0

我有以下关系:

class User 
  has_many :followed_users, :through => :relationships, source: :followed

当我User.last.followed_users在控制台中说时,这是可行的。User但是,当我在使用它的类中创建方法时self.followed_users失败。我希望能够followed_users在实现它的模型中调用。有什么帮助吗?

错误消息说该方法followed_users不存在。

4

1 回答 1

0

如何定义追随者/追随者关系集:

class User
  has_many :followings
  has_many :followers, :through => :followings
  has_many :inverse_followings, :class_name => "Following", :foreign_key => "follower_id"
  has_many :followed_users, :through => :inverse_followings, :source => :user
end

确保您有一个以下类(或您的示例中的关系类),它有一个 user_id 和一个 follower_id 来表达这种关系。

调用self.followed_usersself.followers在用户类方法中应该可以正常工作。

于 2012-08-27T00:53:57.710 回答