Undefined method each for fixnum in Rails

748 Views Asked by At

I my increment!

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

I get an error;

undefined method `each' for 4:Fixnum

So it is like i am calling .each method on my number. But there is no each method, isn't it? Also previously I used the same thing for other objects.

For example:

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

I could use increment! for toner_gr and toner_vl attributes easily like that:

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

There are 1 best solutions below

0
On

That was very silly mistake, because @cartridge.dosing_edges fas trying to retrieve all dosing_edges that belong to @cartridge because of has_many and belongs_to association.