Why I can't override attr_reader for simple_form?

I have simple problem with overriding attribute readers and seeing same
changes appear on simple_form. I have a model and it has some attributes
that I want to override with different readers. I did something like

class CustomerSupplierItem < ActiveRecord:Base

it has attribute called pack

def pack
“Some overridden value”


Now when I use the model in simple_form

<%= simple_form_for @customer_supplier_item do |f| %>
<%= f.input :pack %>
<% end %>

I do not get “Some overridden value” as value in pack input. I see
pack value without overridden attr_reader.

What is the way to override the attr_reader such that is affects
simple_form and similar form helpers?


it seens like it is a issue within the rails form helper itself

I’ve tried to do what you described and got the same problem, even by
only form_for @model

But you can always write the the value that you want with input_html

<%= f.input :name, :input_html => { :value => @model.name } %>

it works, but is not the better way, if I were you I would might
using a class method that will be responsable to return the value you
wanted into the “get method”

2012/5/30 Amit A. [email protected]

"Some overridden value"

I do not get “Some overridden value” as value in pack input. I see
“Ruby on Rails: Talk” group.
To view this discussion on the web visit
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at

Pedro Henrique de Souza Medeiros

Cel: +55 (61) 9197-0993
Email: [email protected]

Beautiful is better than ugly,
Explicit is better than implicit,
Simple is better than complex,
Complex is better than complicated.

The Zen of Python, by Tim Peters