Reading n writing object attributes


#1

Reading n writing object attributes

Hi. In this simple example I have a User class with the class method:

def self.find_user(name)
user = self.find(:first, :conditions => [“username = ?”, name])
# user.salt
end

In the rails console I do the following:

u = User.find_user(‘kena’)
=> #<User id: 5, username: “test”, hashed_password:
“c1a18d933c06f5a3ebd8d1d155d294f39447fbf2”, salt:
“177647700.129851651671097”, email: “”, created_at: “2008-10-28
00:54:42”, updated_at: “2008-10-28 00:54:42”>

u.salt
=> nil

u.username
=> nil

What I don’t understand is why I can’t access its attributes?


#2

Soh,

Not sure why you are not able to access the attributes in the use case
but can I ask why you are not using the dynamic find_by methods ie
User.find_by_username(‘kena’) ?


Robert Z.
Zapient, LLC
Ruby on Rails Development and Consulting

On Oct 27, 6:49 pm, Soh D. removed_email_address@domain.invalid


#3

Robert Z. wrote:

Soh,

Not sure why you are not able to access the attributes in the use case
but can I ask why you are not using the dynamic find_by methods ie
User.find_by_username(‘kena’) ?


Robert Z.
Zapient, LLC
Ruby on Rails Development and Consulting

On Oct 27, 6:49�pm, Soh D. removed_email_address@domain.invalid

I will definitely use the dynamic method, but I was just wondering why
the other way was going wrong. I didn’t have any private nor protected
methods and I was reloading my console with: reload! … I then decided
to re-start my machine and now it works fine. Unfortunately I cannot
reproduce that problem now … let’s consider that a good thing …
thanks anyway :slight_smile: