diff options
Diffstat (limited to 'lib/arel')
-rw-r--r-- | lib/arel/engines/sql/relations/compiler.rb | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/arel/engines/sql/relations/compiler.rb b/lib/arel/engines/sql/relations/compiler.rb index 9684aa7d7d..dfc2489e77 100644 --- a/lib/arel/engines/sql/relations/compiler.rb +++ b/lib/arel/engines/sql/relations/compiler.rb @@ -83,8 +83,12 @@ module Arel end protected - def method_missing(method, *args, &block) - relation.send(method, *args, &block) + def method_missing(method, *args) + if block_given? + relation.send(method, *args) { |*block_args| yield(*block_args) } + else + relation.send(method, *args) + end end def build_query(*parts) |