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 を持つ次のクラス (または例の Relationship クラス) があることを確認してください。

self.followed_usersまたはUser クラス メソッド内での呼び出しself.followersは正常に機能するはずです。

于 2012-08-27T00:53:57.710 に答える