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

I am told that I am not calling a method when I think I am.

Hi there,

Newbie alert!

I can't seem to crack this - when I check work - I am getting an error saying that I am not calling the method has_value?

I would be grateful for any help as I can't progress within the course

Thanks

hash.rb
grocery_item = { "item" => "Bread", "quantity" => 1, "brand" => "Treehouse Bread Company" }
if grocery_item.has_value?("Bread")
  grocery_item = { "food" => true }
end

The challenge was "Using the has_value? method, check to see if the grocery_item hash has a value called "Bread". If it does, set a new key in the hash called "food" with the value of true." - all I was given was line 1 - lines 2,3 and 4 are my code.

1 Answer

Hambone F
Hambone F
3,581 Points

It looks like the issue lies not in checking for the value, but updating the hash.

It's asking you to add the "food" key and value to the existing hash, but your solution is effectively overwriting the old hash with a new one.

I'd review the first video in the lesson, "Ruby Hash Creation", specifically where he shows examples in a console around 4:00 in, to see how to add a single value.