rails/rails — pull request #6841 by ernie (2012-06-24 01:28:57+00:00)
Title: Stop assuming strings for grouped calculations

Execute_grouped_calculation is one of those places where
ActiveRecord forgets that it has ARel underpinnings, and
assumes that the values provided to group_values are
strings. This artificially hobbles otherwise functional
code. This patch stops assuming that incoming values
respond to to_sym, stops using string interpolation for
table aliases on objects that support aliasing, and stops
unnecessarily joining group_values on the relation.

Additionally, it calls `to_sql`, if available, on objects
sent to column_alias_for, in order to get a more reasonable
alias string than a non-string's default to_str method.