我正在尝试从用户开始对我的应用程序的某些部分使用不同的前端和后端视图。
我收到错误uninitialized constant Office::DashboardController
,据我了解这意味着找不到控制器?我觉得这是如何设置名称空间/目录的问题,但我似乎无法使用。
routes.rb
namespace :office do
root to: "dashboard#index"
resources :users
end
office / dashboards_controller.rb
class Office::DashboardsController < ApplicationController
layout "office"
end
office / users_controller.rb
class UsersController < Office::DashboardController
def index
@users = User.all
end
def show
@user = User.find_by_username(params[:id])
end
end
我有可能完全搞砸了,这是完全错误的……如果是这样,我希望得到一些反馈!
非常感谢:)
答案 0 :(得分:0)
您在DashboardController
模块中有Office
,但是UsersController
不在模块中。这是为什么?他们两个都在同一个文件夹中。
所以,要么
class Office::UsersController < Office::DashboardController
或
module Office
class UsersController < DashboardController
应能按预期工作。
提示:您可以运行rails routes
并查看Rails期望的文件夹/类名称。