【问题标题】:Create two navigation link for single table in rails_admin gem在 rails_admin gem 中为单个表创建两个导航链接
【发布时间】:2016-04-25 09:34:57
【问题描述】:

我有一个名为 User 的表。

我有两种记录:

1) 公司

2) 代理

字段名称是 is_agency?(布尔值)。如果是代理则为真,如果为公司则为假。

我想在管理端将 User 表显示到两个不同的表 CorporationAgency。我使用了 rails_admin gem。

如何使用“is_agency”进行区分?领域?

我查看了 rails_admin gem 文档,但没有找到任何相关信息。

请帮我找出这个解决方案,它将节省我的时间。

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 rails-admin


    【解决方案1】:

    您可以按照此处所述创建自定义操作:https://github.com/sferik/rails_admin/wiki/Custom-action

    例如

    # in lib/rails_admin/agency.rb
    
    require 'rails_admin/config/actions'
    require 'rails_admin/config/actions/base'
    module RailsAdmin
       module Config
          module Actions
             class Agency < RailsAdmin::Config::Actions::Base
             RailsAdmin::Config::Actions.register(self)
             register_instance_option :controller do
                Proc.new do
                   @objects = Project.where(is_agency: true)
                   render "index"
                end
             end
             register_instance_option :collection do
                true
              end
             register_instance_option :link_icon do
                'icon-th-list'
             end 
          end
        end
      end
    end
    

    然后你必须将它添加到 rails_admin.rb 初始化器

    config.actions do
    dashboard                     # mandatory
    index 
    agency do
      only ['User']
    end  
    

    然后对 Corporation 执行相同的操作。

    不要忘记将翻译添加到语言环境 rails_admin.en.yml

    另一种方法是使用作用域: https://github.com/sferik/rails_admin/wiki/List 在文本中搜索范围。

    希望这会有所帮助, 最好的祝福, 爱奥尼斯

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多