Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 用于管理的Rails基本控制器_Ruby On Rails_Controller_Admin_Base - Fatal编程技术网

Ruby on rails 用于管理的Rails基本控制器

Ruby on rails 用于管理的Rails基本控制器,ruby-on-rails,controller,admin,base,Ruby On Rails,Controller,Admin,Base,我正在从.net迁移到rails,我是一个初学者。我已经玩过了,但不知道如何为管理员名称空间创建一个基本控制器来共享一些功能。我的意思是,基类应该放在哪里,因为每次尝试都会出错 谢谢假设您使用的是Rails 3。 你可以这样做 routes.rb namespace :admin do resources :users end 以下是控制器文件夹的结构: controllers/ application_controller.rb admin/ base_admin_con

我正在从.net迁移到rails,我是一个初学者。我已经玩过了,但不知道如何为管理员名称空间创建一个基本控制器来共享一些功能。我的意思是,基类应该放在哪里,因为每次尝试都会出错


谢谢

假设您使用的是Rails 3。 你可以这样做

routes.rb

namespace :admin do
  resources :users
end
以下是控制器文件夹的结构:

controllers/
  application_controller.rb
  admin/
    base_admin_controller.rb
    users_controller.rb
admin/base\u admin\u controller.rb:

class Admin::BaseAdminController < ApplicationController
  protected

    def some_shared_method
      # Do something
    end
end
class Admin::UsersController < Admin::BaseAdminController
  def index
    some_shared_method
  end
end
class Admin::BaseAdminController
您可以添加所有管理员控制器将共享的任何方法。然后只需继承BaseAdminController类

admin/users\u controller.rb:

class Admin::BaseAdminController < ApplicationController
  protected

    def some_shared_method
      # Do something
    end
end
class Admin::UsersController < Admin::BaseAdminController
  def index
    some_shared_method
  end
end
class Admin::userscocontroller