diff options
author | rhenium <rhenium@rhe.jp> | 2015-03-18 01:13:40 +0900 |
---|---|---|
committer | rhenium <rhenium@rhe.jp> | 2015-03-18 01:13:40 +0900 |
commit | 8e96277bb5a819a001a4fdd2ba71331fc484cf3d (patch) | |
tree | 7f6c6d7c619ae1511fa2422614f149dd37ce9ea1 | |
parent | 2ac6e376bf1bf16711b6690ff3b0bcb538892b22 (diff) | |
download | aclog-8e96277bb5a819a001a4fdd2ba71331fc484cf3d.tar.gz |
web: tweets: use eagar loading only in needed pages
-rw-r--r-- | app/controllers/tweets_controller.rb | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/app/controllers/tweets_controller.rb b/app/controllers/tweets_controller.rb index 2b2d77f..f95df2b 100644 --- a/app/controllers/tweets_controller.rb +++ b/app/controllers/tweets_controller.rb @@ -51,7 +51,7 @@ class TweetsController < ApplicationController def user_favorites @user = require_user authorize_to_show_user! @user - @tweets = paginate_with_page_number Tweet.reacted(params[:reactions]).favorited_by(@user).order("`favorites`.`id` DESC") + @tweets = paginate_with_page_number Tweet.reacted(params[:reactions]).favorited_by(@user).order("`favorites`.`id` DESC").eager_load(:user) end def user_favorited_by @@ -59,19 +59,19 @@ class TweetsController < ApplicationController authorize_to_show_user! @user @source_user = User.find(id: params[:source_user_id], screen_name: params[:source_screen_name]) authorize_to_show_user! @source_user - @tweets = paginate @user.tweets.reacted(params[:reactions]).favorited_by(@source_user).order_by_id + @tweets = paginate @user.tweets.reacted(params[:reactions]).favorited_by(@source_user).order_by_id.eager_load(:user) end def all_best - @tweets = paginate_with_page_number Tweet.reacted.parse_recent(params[:recent]).order_by_reactions + @tweets = paginate_with_page_number Tweet.reacted.parse_recent(params[:recent]).order_by_reactions.eager_load(:user) end def all_timeline - @tweets = paginate Tweet.reacted(params[:reactions]).order_by_id + @tweets = paginate Tweet.reacted(params[:reactions]).order_by_id.eager_load(:user) end def filter - @tweets = paginate Tweet.recent((params[:period] || 7).days).filter_by_query(params[:q].to_s).order_by_id + @tweets = paginate Tweet.recent((params[:period] || 7).days).filter_by_query(params[:q].to_s).order_by_id.eager_load(:user) end def i_responses @@ -103,10 +103,6 @@ class TweetsController < ApplicationController end def render(*args) - if @tweets && @tweets.is_a?(ActiveRecord::Relation) - @tweets = @tweets.eager_load(:user) - end - if @tweets && @tweets.length > 0 if @page @prev_url = @page == 1 ? nil : url_for(params.merge(page: @page - 1)) |