Ruby Build a Rails API Coding the API Namespacing Review

Hideto Yasunori
Hideto Yasunori
9,079 Points

Now add a v2 namespace. It should also contain todo_lists and todo_items resources, nested in the same way as the v1 nam

Now add a v2 namespace. It should also contain todo_lists and todo_items resources, nested in the same way as the v1 namespace.

Can you help me what is wrong? Thank you.

routes.rb
Rails.application.routes.draw do
  namespace :api do
    namespace :v1 do
       namespace :v2 do
         resources :todo_lists do
            resources :todo_items do
             member do
               patch :complete
             end
            end
          end
       end
    end
  end
end

2 Answers

You need to have two additional resources of todo_lists and todo_items in a namespace of v2:

v1 resource resource v2 resource resource

And do not forget to end the statements.

Hideto Yasunori
Hideto Yasunori
9,079 Points

Thank you Daniel! It now works!

Kevin Elliott
Kevin Elliott
15,653 Points

Also, the initial code here has v2 nested inside of v1. They should be parallel to each other in the block levels. In other words, this creates v2 underneath v1, when ideally they should be at the same level.