【发布时间】:2016-01-23 15:36:40
【问题描述】:
我正在尝试将命名空间定义为管理员,我的路由文件如下;
namespace :admin do
root 'base#index'
resources :boats
end
所以我有管理文件夹,里面有base_controller.rb;
class Admin::BaseController < ApplicationController
before_action :logged_in_user, :auth_admin
def index
end
end
我创建了从 BaseController 继承的 cars_controller.rb;
class Admin::CarsController < BaseController
def index
@cars = Car.all
end
end
所以,像这样我从控制台收到错误;
ActionController::RoutingError (uninitialized constant BaseController):
app/controllers/admin/cars_controller.rb:1:in `<top (required)>'
如果我将 BaseController 改为 ApplicationController,则它可以正常工作。 Bur 我不明白为什么会出现这样的错误。
【问题讨论】:
-
看起来很简单;你不在模块中,所以没有
BaseController。
标签: ruby-on-rails inheritance controller routing