提交 8f10ccd3 编写于 作者: J Jon Leighton

Ensure that ORDER BY clauses from default scopes are not included in...

Ensure that ORDER BY clauses from default scopes are not included in calculation queries. Fixes #406.
上级 b3791da0
......@@ -197,7 +197,7 @@ def operation_over_aggregate_column(column, operation, distinct)
def execute_simple_calculation(operation, column_name, distinct) #:nodoc:
# Postgresql doesn't like ORDER BY when there are no GROUP BY
relation = except(:order)
relation = reorder(nil)
if operation == "count" && (relation.limit_value || relation.offset_value)
# Shortcut when limit is zero.
......
......@@ -462,4 +462,8 @@ def test_unscoped_with_named_scope_should_not_have_default_scope
assert DeveloperCalledJamis.unscoped.poor.include?(developers(:david).becomes(DeveloperCalledJamis))
assert_equal 10, DeveloperCalledJamis.unscoped.poor.length
end
def test_default_scope_order_ignored_by_aggregations
assert_equal DeveloperOrderedBySalary.all.count, DeveloperOrderedBySalary.count
end
end
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册