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

Having trouble creating an array from a hash key/value; Challenge 2/2 Working with Hash Values

Not getting this:

Using the values_at method, create an array called grocery_list with the value of the grocery_item hash at the "item" key.

can you post a link to the challenge

I tried this;

grocery_list.values_at("item") = Array.new

1 Answer

the ruby docs on the values_at method state:

values_at(key, ...)

Return an array containing the values associated with the given keys. Also see Hash.select.

so we just need to call the values_at method on grocery items and pass in"item". Since it returns an array, we can assign the return value of this to a variable named grocery_list:

grocery_item = { "item" => "Bread", "quantity" => 1, "brand" => "Treehouse Bread Company" }
grocery_item["food"] = true 
if grocery_item.has_value?("Bread")
grocery_list = grocery_item.values_at("item")

Thanks, should have realized it was returning an array and I didn't need the Array.new

no problem