【问题标题】:Rails Base Controller for admin用于管理员的 Rails 基本控制器
【发布时间】:2012-12-18 10:01:30
【问题描述】:

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

谢谢

【问题讨论】:

    标签: ruby-on-rails controller admin base


    【解决方案1】:

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

    routes.rb

    namespace :admin do
      resources :users
    end
    

    这是控制器文件夹的结构:

    controllers/
      application_controller.rb
      admin/
        base_admin_controller.rb
        users_controller.rb
    

    admin/base_admin_controller.rb:

    class Admin::BaseAdminController < ApplicationController
      protected
    
        def some_shared_method
          # Do something
        end
    end
    

    您可以添加所有管理员控制器将共享的任何方法。然后只需简单地继承 BaseAdminController 类。

    admin/users_controller.rb:

    class Admin::UsersController < Admin::BaseAdminController
      def index
        some_shared_method
      end
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多