
Harsh Mankad
4,650 Pointsquestion on code for adding a key - value pair
wondering what's the issue with my code here?
grocery_item = { "item" => "Bread", "quantity" => 1, "brand" => "Treehouse Bread Company" }
grocery_item.has_value?("Bread")
grocery_item["food"] = "true"
1 Answer

andren
28,390 PointsThere are two issues with your code:
To run code conditionally you need to use a conditional statement like
if
or something along those lines. Placing a condition likegrocery_item.has_value?("Bread")
on a line of its own doesn't actually do anything useful, as Ruby will just throw away the result of the condition since you don't actually do anything with it.The task wants you to assign the Boolean value
true
to thefood
key, not a string containing the word true. Booleans are their own datatype, distinct from strings. So you should not use quotes when you type them in your code.
If you fix those two issues like this:
grocery_item = { "item" => "Bread", "quantity" => 1, "brand" => "Treehouse Bread Company" }
if grocery_item.has_value?("Bread") # Use if statement to conditonally run code below
grocery_item["food"] = true # Set food key to Boolean value true
end
Then your code will pass the first task.
Harsh Mankad
4,650 PointsHarsh Mankad
4,650 PointsThanks for your help.