find_in_batches rails db出错

时间:2014-07-17 05:54:41

标签: ruby-on-rails ruby

我有一个rake任务,我试图从我的old_work_orders表中获取所有值。 这是我的任务..

OldWorkOrder.find_in_batches do |group|
  p group
end

我得到这样的错误..

rake aborted!

ActiveRecord::StatementInvalid: Mysql2::Error: Unknown column 'old_work_orders.' in 'order clause': SELECT  `old_work_orders`.* FROM `old_work_orders`   ORDER BY `old_work_orders`.`` ASC LIMIT 1000

,型号名称为old_work_order.rb

class OldWorkOrder < ActiveRecord::Base
end

我的数据库中也有值..

1 个答案:

答案 0 :(得分:1)

问题是您使用的模型没有主键 解决方案非常简单

仅用于此查询目的

定义

class OldWorkOrder < ActiveRecord::Base   
   self.primary_key = :id
end

然后使用

OldWorkOrder.find_in_batches do |group| 
    p group
 end