[Rails] In Rails 3.1 Model.count() ignores :include - no outer join in generated SQL
Hello!
Just upgraded to Rails 3.1, ran my test and found this issue:
class Trade < ActiveRecord::Base
has_many :transaction_trades
.....
def Trade.do_something
stale_trades = Trade.count('transaction_trades.id',
:include => :transaction_trades,
:group => 'trades.id')
:having => "count_transaction_trades_id =
0")
end
end
Earlier this used to work perfectly, now I get this:
Mysql2::Error: Unknown column 'transaction_trades.id' in 'field list':
SELECT COUNT(transaction_trades.id) AS count_transaction_trades_id,
trades.id AS trades_id FROM `trades` GROUP BY trades.id
What puzzles me is that no LEFT OUTER JOIN on transaction_trades is
present in generated SQL - that's why things broke.
Any hints what's wrong here? Why is :include => :transaction_trades
seems to be ignored?
--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home