我从.net迁移到rails并且我是初学者。我玩过但不知道如何为admin命名空间创建一个基本控制器来共享一些功能。我的意思是,在哪里放基类,因为每次尝试都会出错。
由于
答案 0 :(得分:13)
假设您使用的是Rails 3。 你可以这样做。
<强>的routes.rb 强>
namespace :admin do
resources :users
end
这是controllers文件夹的结构:
controllers/
application_controller.rb
admin/
base_admin_controller.rb
users_controller.rb
系统管理员/ base_admin_controller.rb:强>
class Admin::BaseAdminController < ApplicationController
protected
def some_shared_method
# Do something
end
end
您可以添加所有管理员将共享的任何方法。然后只需继承BaseAdminController类。
系统管理员/ users_controller.rb:强>
class Admin::UsersController < Admin::BaseAdminController
def index
some_shared_method
end
end