ActiveRecord::ReadOnlyRecord on attributes_update

Hi,

I have a ActiveRecord::ReadOnlyRecord error when i update child
attributes whereas when i create a new one it works fine.

Someone had this error?

Best,
greg

Hi,

I have a ActiveRecord::ReadOnlyRecord error when i update child
attributes whereas when i create a new one it works fine.

find marks records as read only if you specify a :joins option (you
can override this with :readonly => false)

Fred

Sorry but i'm not sure where do I have to put a join.

here is my code:
class Product < ActiveRecord::Base
  attr_accessible :name, :prod_type, :min_visit, :max_visit, :price,
:visible, :ingredient_attributes

  has_and_belongs_to_many :ingredients
  belongs_to :city_preferences :city_preferences

  after_update :save_ingredients

  def ingredient_attributes=(ingredient_attributes)
    ingredient_attributes.each do |ingredient|
      if ingredient[:id].blank?
        ingredients.build(ingredient)
      else
        ing = Ingredient.detect {|i| i.id == ingredient[:id].to_i}
        ing.attributes = ingredient
      end
    end
  end

  def save_ingredients
    ingredients.each do |t|
      t.save(false) #false parameter = avoid validation
    end
  end

end

class Ingredient < ActiveRecord::Base
  attr_accessible :name, :price, :visible

  has_and_belongs_to_many :products
end

Thx Greg

Frederick Cheung wrote: