You can use attr_readonly :title, :author to prevent assign value to attribute after initialized.

You can use enable_readonly! and disable_readonly! to control the behavior.

Important: It's no effect with embeds or array attributes !!!

enable_attr_readonly!, disable_attr_readonly!




readonly!, readonly?

Mark the current model instance as readonly, which prevents any future attempts to save or update. The instance is still accessible, just frozen.

The transition to readonly, is one-directional and cannot be reversed. If you need to write to this instance again, you'll have to find it again. This is different from marking an individual attribute as readonly, which can be reversed.

Class methods


Returns a Set of attributes that are marked with attr_readonly in your All Futures class. Attributes in the Set are presented as Strings.

Last updated