# Re: Overwriting default accessors

**URL:** <https://www.ruby-forum.com/t/re-overwriting-default-accessors/177131>\
**Category:** Rails\
**Created:** [October 12, 2009, 8:46am UTC](https://www.ruby-forum.com/t/re-overwriting-default-accessors/177131 "2009-10-12T08:46:29Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![builtbysimple](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/aca169/32.png) [@builtbysimple](https://www.ruby-forum.com/u/builtbysimple)\
**Post date:** [October 12, 2009, 8:46am UTC](https://www.ruby-forum.com/t/re-overwriting-default-accessors/177131/1 "2009-10-12T08:46:29Z")

</div>

Hi Marnen

On Oct 12, 3:04 pm, Marnen Laibow-Koser  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> > hoping that this accessors would be able to set or change the value of  
> > :status. But the behaviours doesn’t seems to be like that.
> 
> It can be, but you’ll have to do it slightly differently. I’ll help  
> you, but you’re going to have to explain exactly what you want to have  
> happen.

The point is I want to set the value of the status before it is saved  
to the database.

> > So what is  
> > this accessors used for? Is it only for the view level?
> 
> No. It’s just that your syntax wasn’t quite correct.

Many thanks.

–  
Certified Scrum Master  
[http://blog.scrum8.com](http://blog.scrum8.com) | [http://jobs.scrum8.com](http://jobs.scrum8.com) |  
[http://twitter.com/scrum8](http://twitter.com/scrum8)

---

<div class="post-metadata">

**Author:** ![builtbysimple](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/aca169/32.png) [@builtbysimple](https://www.ruby-forum.com/u/builtbysimple)\
**Post date:** [October 12, 2009, 5:24pm UTC](https://www.ruby-forum.com/t/re-overwriting-default-accessors/177131/2 "2009-10-12T17:24:56Z")

</div>

Joshua P. wrote:

> Hi Marnen
> 
> On Oct 12, 3:04 pm, Marnen Laibow-Koser  
> [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:
> 
> > > hoping that this accessors would be able to set or change the value of  
> > > :status. But the behaviours doesn’t seems to be like that.
> > 
> > It can be, but you’ll have to do it slightly differently. I’ll help  
> > you, but you’re going to have to explain exactly what you want to have  
> > happen.
> 
> The point is I want to set the value of the status before it is saved  
> to the database.

Then you want something like

def status=(value)  
new\_value = do\_something\_to(value)  
self[:status] = new\_value # assuming this class is derived from AR  
end

The reason your attempt to do status = value didn’t work is that it was  
just calling the same method.

## Best,

Marnen Laibow-Koser  
[http://www.marnen.org](http://www.marnen.org)  
removed\_email\_address@domain.invalid
