(我已經看到了這一切相關問題,但他們都沒有工作對我來說)導軌 - 其中:created_at比self.created_at以下(以上)(Mongoid)
在before_update
,我需要取之前的記錄自我但無法弄清楚如何查詢「created_at < self.created_at
」。我想這樣的:
def set_update_consumo
lastRecord =
Reporte.where(:hidrometro_id => self.hidrometro_id)
.where('created_at < ?', self.created_at)
.order_by(:created_at => 'desc').offset(1).first
set_record(lastRecord)
end
而且我得到這個錯誤:如果我刪除where('created_at < ?', self.created_at)
它的工作原理
Completed 500 Internal Server Error in 784ms
ArgumentError (wrong number of arguments (given 2, expected 1)):
app/models/reporte.rb:49:in 'set_update_consumo'
app/controllers/reportes_controller.rb:57:in `block in update'
app/controllers/reportes_controller.rb:56:in `update'
。 SO中沒有任何其他答案爲我工作,並且不能使用寶石(如squeel)。
我正在使用Rails 5.0.2(Ruby 2.4)與Mongoid。
你有沒有名爲'created_at'的方法? –
你正在使用ActiveRecord而不是Mongoid的權利? – max
你能從錯誤的堆棧跟蹤中至少粘貼幾行嗎? – BoraMa