Refactored count_for_collection() for using pluck instead of select

This commit is contained in:
blackst0ne 2017-02-21 12:45:08 +11:00
parent 9a9a368fe0
commit 1eb72a71f5
2 changed files with 5 additions and 5 deletions

View File

@ -28,13 +28,13 @@ module IssuableCollections
downvotes = issuable_votes_count.find { |votes| votes.awardable_id == id && votes.downvote? }
upvotes = issuable_votes_count.find { |votes| votes.awardable_id == id && votes.upvote? }
notes = issuable_note_count.find { |notes| notes.noteable_id == id }
merge_requests = issuable_merge_requests_count.find { |mr| mr.issue_id == id }
merge_requests = issuable_merge_requests_count.find { |mr| mr.first == id }
issuable_meta[id] = Issuable::IssuableMeta.new(
upvotes.try(:count).to_i,
downvotes.try(:count).to_i,
notes.try(:count).to_i,
merge_requests.try(:count).to_i
merge_requests.try(:last).to_i
)
end
end

View File

@ -7,9 +7,9 @@ class MergeRequestsClosingIssues < ActiveRecord::Base
class << self
def count_for_collection(ids)
select('issue_id', 'COUNT(*) as count').
group(:issue_id).
where(issue_id: ids)
group(:issue_id).
where(issue_id: ids).
pluck('issue_id', 'COUNT(*) as count')
end
end
end