aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrhenium <rhenium@rhe.jp>2015-03-18 01:13:40 +0900
committerrhenium <rhenium@rhe.jp>2015-03-18 01:13:40 +0900
commit8e96277bb5a819a001a4fdd2ba71331fc484cf3d (patch)
tree7f6c6d7c619ae1511fa2422614f149dd37ce9ea1
parent2ac6e376bf1bf16711b6690ff3b0bcb538892b22 (diff)
downloadaclog-8e96277bb5a819a001a4fdd2ba71331fc484cf3d.tar.gz
web: tweets: use eagar loading only in needed pages
-rw-r--r--app/controllers/tweets_controller.rb14
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))