sexta-feira, 31 de outubro de 2014

Alterar Rails 4 models para readonly

Pequena receita de bolo para alterar ActiveRecord::Base models para readonly:

module ActiveRecord  
  class Base
    validate :validate_readonly

    def readonly?
      true
    end

    def validate_readonly
      errors.add(:base, 'Erro readonly') if readonly?
    end
  end  
end

Sem o validate o código lança uma exceção do tipo ActiveRecord::ReadOnlyRecord.