私のユーザーモデルには、friends
すべてのユーザーのFacebookの友達のハッシュを返すメソッドがあります。私の見解では、リスト全体を繰り返し処理して、そのリストをアルファベット順にページ付けします。サーバーの動作が本当に遅いのか、これが非常に非効率的なのかわかりません。このプロセスを高速化するにはどうすればよいですか?friends
モデルを作成したほうがいいですか?私の方法が非効率的であるかどうか、その理由、そしてどのように私がそれをより速くすることができるかもしれないかを私に知らせてください。ありがとう!
私のHome.html.erbビューには<%letter ='a'%>
、ユーザーが別の文字を選択してページが更新されたときに変更されるものがあります。
<% current_user.friends.each do |user| %>
<% if user['name'].downcase.start_with? letter %>
do something
<% end %>
ユーザーモデル
def facebook
@facebook ||= Koala::Facebook::API.new(token)
block_given? ? yield(@facebook) : @facebook
rescue Koala::Facebook::APIError => e
logger.info e.to_s
nil
end
def friends
facebook {|fb| fb.get_connections("me","friends")}.sort{|a,b| a['name']<=>b['name']}
end