From 5659b667291940881da2b18ba03cfd0df5f93647 Mon Sep 17 00:00:00 2001 From: Josh Susser and Avdi Grimm Date: Fri, 17 May 2013 15:11:37 -0400 Subject: [PATCH] Refactor select().map() to use pluck. Remove a method already provided by ActiveRecord. --- app/models/category.rb | 2 +- app/models/group.rb | 6 +----- app/models/post_action.rb | 2 +- lib/post_destroyer.rb | 2 +- 4 files changed, 4 insertions(+), 8 deletions(-) diff --git a/app/models/category.rb b/app/models/category.rb index 6ce6d3afc12..6f079e606d1 100644 --- a/app/models/category.rb +++ b/app/models/category.rb @@ -112,7 +112,7 @@ class Category < ActiveRecord::Base def group_names=(names) # this line bothers me, destroying in AR can not seem to be queued, thinking of extending it category_groups.destroy_all unless new_record? - ids = Group.where(name: names.split(",")).select(:id).map(&:id) + ids = Group.where(name: names.split(",")).pluck(:id) ids.each do |id| category_groups.build(group_id: id) end diff --git a/app/models/group.rb b/app/models/group.rb index e16af207bf0..2d6a6bf058b 100644 --- a/app/models/group.rb +++ b/app/models/group.rb @@ -129,11 +129,7 @@ class Group < ActiveRecord::Base end def usernames - users.select("username").map(&:username).join(",") - end - - def user_ids - users.select('users.id').map(&:id) + users.pluck(:username).join(",") end def add(user) diff --git a/app/models/post_action.rb b/app/models/post_action.rb index ac3f687797d..df01b0f5b21 100644 --- a/app/models/post_action.rb +++ b/app/models/post_action.rb @@ -26,7 +26,7 @@ class PostAction < ActiveRecord::Base .count('DISTINCT posts.id') $redis.set('posts_flagged_count', posts_flagged_count) - user_ids = User.staff.select(:id).map {|u| u.id} + user_ids = User.staff.pluck(:id) MessageBus.publish('/flagged_counts', { total: posts_flagged_count }, { user_ids: user_ids }) end diff --git a/lib/post_destroyer.rb b/lib/post_destroyer.rb index 52c88ee3564..4675b487964 100644 --- a/lib/post_destroyer.rb +++ b/lib/post_destroyer.rb @@ -43,7 +43,7 @@ class PostDestroyer @post.update_flagged_posts_count # Remove any reply records that point to deleted posts - post_ids = PostReply.select(:post_id).where(reply_id: @post.id).map(&:post_id) + post_ids = PostReply.where(reply_id: @post.id).pluck(:post_id) PostReply.delete_all reply_id: @post.id if post_ids.present?