Ruby Ruby Collections Build a Grocery List Program Working with Hashes That Contain Arrays

shopping list

????

shopping_list.rb
def number1
grocery_list = { 'title' => 'Grocery List', "items" => [] }
return grocery_list
end

  def number2 
grocery_item = { 'title' => 'Bread', 'quantity' => 1 }
return grocery_item
  end 


list = number1()

list["items"].push(number2())

1 Answer

Steve Hunter
MOD
Steve Hunter
Treehouse Moderator 57,555 Points

Hi there,

Your last line of code shows the method we need to adopt here.

We have a grocery_list which has an empty array within it, called items. We want to add grocery_item to that empty array.

This only needs one line of code; we don't need to define new methods or return anything.

First, select the items array of grocery_list. We can do that by using square brackets after grocery_list and putting 'items inside that:

grocery_list['items']

After this, use dot notation to push the grocery_item onto the items array:

grocery_list['items'].push(grocery_item)

I hope that makes sense.

Steve.