Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialJessica H
16,612 PointsInitialize variable address
"Below the Address class definition, initialize a variable called address which will be a new instance of the Address class. Double check to make sure all required arguments are given."
But nothing's working for me, so I haven't figured out Treehouse special way to write it yet. Idea? :)
class Address
attr_accessor :kind, :street_1, :street_2, :city, :state, :postal_code
def initialize(kind, street_1, street_2, city, state, postal_code)
@kind = kind or ''
@street_1 = street_1 or ''
@street_2 = street_2 or ''
@city = city or ''
@state = state or ''
@postal_code = postal_code or ''
end
def to_s(format = 'short')
address = ''
case format
when 'long'
address += street_1 + "\n"
address += street_2 + "\n" if !street_2.nil?
address += "#{city}, #{state} #{postal_code}"
when 'short'
address += "#{kind}: "
address += street_1
if street_2
address += " " + street_2
end
address += ", #{city}, #{state}, #{postal_code}"
end
address
end
end
5 Answers
Vlad Filiucov
10,665 PointsYou need to create a new instance of address class below the class. Type in something like this at the end of the page
address = Address.new("short", "GAgarin", "blabla", "Chisinau,", "Chisinau", "md-2004")
John Steer-Fowler
Courses Plus Student 11,734 PointsYep, try something like this:
address = Address.new('Home', '123 Main St.', 'Main Rd.', 'Portland', 'OR', '12345')
as in the video...
In Ruby, when a question asks you to check 'arguments', these is the information that was pre-initialized into the Address class (see the code that the challenge provides you with).
La Kenzi
14,346 PointsI am currently having the same problem clicked on your post in hopes that someone has helped us. But no luck yet, although I am currently working my way through the Ruby tracks it looks like you already fought through most of the problems. Would you be able to shed some insight or even help in your free time?
Jessica H
16,612 PointsI have looked at that video several times so I'm pretty sure there's nothing wrong with my logic. It might be the platform. lol
I hope someone does answer.
I will be glad to help however I can.
La Kenzi
14,346 PointsOh Yeas!!! Thank you so much that worked.
Annie Scott
27,613 PointsTask 1 at the bottom of page class Address attr_accessor :kind, :street_1, :street_2, :city, :state, :postal_code
def initialize(kind, street_1, street_2, city, state, postal_code) @kind = kind or '' @street_1 = street_1 or '' @street_2 = street_2 or '' @city = city or '' @state = state or '' @postal_code = postal_code or '' end
def to_s(format = 'short') address = '' case format when 'long' address += street_1 + "\n" address += street_2 + "\n" if !street_2.nil? address += "#{city}, #{state} #{postal_code}" when 'short' address += "#{kind}: " address += street_1 if street_2 address += " " + street_2 end address += ", #{city}, #{state}, #{postal_code}" end address end end address = Address.new("kind", "street_1", "street_2", "city,", "state", "postal_code")