Give AR#group an Array instead of a comma separated String

This commit is contained in:
Akira Matsuda 2017-06-03 00:51:32 +09:00
parent 578bd235c9
commit 7f997c7f42
1 changed files with 3 additions and 3 deletions

View File

@ -14,11 +14,11 @@ class User < ActiveRecord::Base
scope :by_name, -> { order(:name) }
scope :by_read_count, -> {
cols = if connection.adapter_name == "PostgreSQL"
column_names.map { |column| %{"users"."#{column}"} }.join(", ")
column_names.map { |column| %{"users"."#{column}"} }
else
'"users"."id"'
['"users"."id"']
end
group(cols).select("count(readerships.id) AS read_count, #{cols}").order('read_count DESC')
group(*cols).select("count(readerships.id) AS read_count, #{cols.join(', ')}").order('read_count DESC')
}
end
class Authorship < ActiveRecord::Base