我对RoR有点陌生,

我想要一个结构化的目录,因为项目可能会变大,所以我不想将所有 Controller 都直接放入controllers目录。

我想要一些东西

app/
    controllers/
          application_controller.rb
          groupa/
                athing_controller.rb
                athing2_controller.rb
          groupb/
                bthing_controller.rb

但是,当我将放置在routes.rb 中时,会出现以下情况:
get 'athing', :to => "groupa/athing#index"

我在 localhost:3000/athing/上收到以下错误:



就像这样:
class AthingController < ApplicationController
  def index
  end
end

我想念什么吗?
我可以放置子目录吗?

最佳答案

尝试改用命名空间:

在您的 route :

namespace :groupa do
  get 'athing', :to => "athing#index"
end

在您的 Controller 中:
class Groupa::AthingController < ApplicationController

在浏览器中:
localhost:3000/groupa/athing/

09-04 03:34