Rails 4.1 ActiveRecord :: relation不再像Array一样

在Rails 4.0.4中这段代码工作:

mailboxes = Mailbox.order(:mailbox) mailboxes.keep_if do |mailbox| # test end 

在Rails 4.1.0中它打破了NoMethodError (undefined method keep_if for )

并且必须改为

 mailboxes = Mailbox.order(:mailbox).to_a mailboxes.keep_if do |mailbox| # test end 

我没有找到任何相关信息

任何的想法?

它在rails 4.1的发行说明中

关系不再有像#map这样的mutator方法! 和#delete_if。 在使用这些方法之前,通过调用#to_a转换为数组。 (拉动请求)

由于keep_if是一个mutator方法,因此将其从Relation删除