Can’t mass-assign these protected attributes: id

This happened to me today when using ActiveResource.

For example, Order.find(:all), whereby Order is an ActiveResource object, always returns the ‘cant mass-assign’ error.

The error is really not informative.

So after a couple of head-scratching hours, it turns out that if the result of Order.find(:all) includes a Shipment object, for example, then we should not have an ActiveRecord app/models/shipment.rb in our application.

It’s just a naming conflict it seems. I’m not really sure why this happens, but hopefully this helps others who may encounter the same problem.

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.