在名称空间下的Rails资源路由导致"不是受支持的控制器名称。"

时间:2014-10-04 17:27:34

标签: ruby-on-rails ruby routing

我正在Rails中构建一个API,我希望它能够被版本化。我的routes.rb文件包含:

Rails.application.routes.draw do
  namespace :V1 do
    resources :users
  end
end

我的控制器位于/app/controllers/V1/users_controller.rb下,其中包含以下内容:

module V1
  class UsersController < ApplicationController
    def index
      render json: {message: "This is a test!"}
    end
  end
end

当我尝试在命令行上运行rails服务器时,出现以下错误:

`default_controller_and_action': 'V1/users' is not a supported controller name. This can lead to potential routing problems. See http://guides.rubyonrails.org/routing.html#specifying-a-controller-to-use

我查看了错误消息给我的链接,但似乎是如何指定要与资源一起使用的控制器。而不是这样做,Rails不能自动从我的目录结构中确定它吗?

1 个答案:

答案 0 :(得分:2)

试试这个:

Rails.application.routes.draw do
  namespace :v1 do
    resources :users
  end
end
相关问题