Ruby Gem の「Socialization」を使用して、モデルでフォロー/ライクを行っています。
シナリオ: ユーザーは件名をフォローでき、件名によって、ユーザーは特定の件名の下にあるすべての記事を取得できます。だから、宝石が提供するメソッドでこれを行う方法を本当に理解できませんでした。そこで、ユーザーモデルで独自のメソッドを作成してみました。
class User < ActiveRecord::Base
..
acts_as_follower
acts_as_liker
def get_subjects
follows = self.follows
f = []
follows.each do |follow|
f << follow.followable
end
return f
end
def get_articles
subjects = self.get_subjects
a = []
subjects.each do |subject|
if subject.articles.count > 0
a << subject.articles
end
end
return a
end
..
end
ここで私がやろうとしているのは、ユーザーがフォローしている主題に基づいて、ユーザーが興味を持ちそうな記事を見つけることです。
これはうまくいくかもしれませんが、もっとうまくやれると確信しています。ここで私を少し案内してくれる人はいますか?
ありがとう、オルフ。