attr_writer and hash

A

aidy

Hi,

class Test
attr_writer :username, :password
def initialize
h = {:username => 'user', :password => 'pass'}
end
end

t = Test.new
p t.h[username]


I am trying to access a hash key after instantiating the Test class,
but I am having a slight problem.

Could someone please direct me?

Thanks

Aidy
 
T

Todd Benson

Hi,

class Test
attr_writer :username, :password
def initialize
h = {:username => 'user', :password => 'pass'}
end
end

t = Test.new
p t.h[username]


I am trying to access a hash key after instantiating the Test class,
but I am having a slight problem.

Could someone please direct me?

Thanks

Aidy

class Test
attr_accessor :h
def initialize
@h = { :username => 'user', :password => 'pass }
end
end

attr_accessor means you can read and write to the object. The object
in this case is the hash, not the key or value. Does that make sense?

hth,
Todd
 
S

Sharon Phillips

Hi,
class Test
attr_writer :username, :password
def initialize
h = {:username => 'user', :password => 'pass'}
end
end

t = Test.new
p t.h[username]


I am trying to access a hash key after instantiating the Test class,
but I am having a slight problem.

Could someone please direct me?

Thanks

Aidy

Hi Aidy,

It looks like you're mixing two different ways of getting at username
and password here.
Here are two separate approaches you could try

class Test
attr_accessor :username, :password

def initialize
@username= 'user'
@password= 'pass'
end
end

t= Test.new
puts t.username
puts t.password

class Test2
attr_accessor :details

def initialize
@details= {:username => 'user', :password => 'pass'}
end
end

t= Test2.new
puts t.details[:username]
puts t.details[:password]


I think the problem with your code is a missing colon before
username. Should be p t.h[:username]

Cheers,
Dave
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,780
Messages
2,569,608
Members
45,250
Latest member
Charlesreero

Latest Threads

Top