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 trial

Ruby Ruby Collections Ruby Hashes Working with Hash Values

Ian Svoboda
Ian Svoboda
16,639 Points

Couldn't pass task 2 of Ruby Code Challenge

My code appears to be right (tested in workspaces) but isn't working in the challenge itself. Would love to know what the deal is!

Code I was using is attached to this post.

hash.rb
grocery_item = { "item" => "Bread", "quantity" => 1, "brand" => "Treehouse Bread Company" }

if grocery_item.has_value?("Bread")
  grocery_item["food"] = true
end

the_value = grocery_item.values_at("item")

grocery_list = ["#{the_value}"]

2 Answers

Andrew Kiernan
Andrew Kiernan
26,892 Points

Hi Ian:

The values_at method returns an array, so your grocery_list currently is [["Bread"]]. If you just set grocery_list = grocery_item.values_at('item') it should pass.

-Andrew

Maciej Czuchnowski
Maciej Czuchnowski
36,441 Points

Are you sure you looked at the video and the notes underneath? This should pass:

grocery_list = grocery_item.values_at("item")
Maciej Czuchnowski
Maciej Czuchnowski
36,441 Points

You code did not pass because values_at returns an array and you put it inside another array.