Rails中的fixnum的每个未定义方法

时间:2015-06-09 08:26:21

标签: ruby-on-rails ruby ruby-on-rails-4

我的增量!

@cartridge.increment!(:dosing_edges,params[:dosing_edge][:quantity].to_i)

我收到错误;

undefined method `each' for 4:Fixnum

所以这就像我在我的号码上调用.each方法。但是没有每种方法,不是吗?此前我也对其他对象使用了相同的东西。

例如:

schema.rb

create_table "cartridges", force: :cascade do |t|
    t.string   "cartridge_name",               null: false
    t.integer  "toner_gr",         default: 0
    t.integer  "toner_vl",         default: 0
    t.integer  "dosing_edges",     default: 0
  ... etc

我可以使用增量!对于toner_gr和toner_vl属性很容易:

@cartridge.increment!(:toner_gr, params[:toner_kg][:weight].to_i)

1 个答案:

答案 0 :(得分:0)

这是非常愚蠢的错误,因为@ cartridge.dosing_edges因为has_many和belongs_to关联而试图检索属于@cartridge的所有dosing_edges。