Rails_admin 自定义操作的控制器方法在哪里?

Wal*_*ong 3 ruby-on-rails rails-admin

我使用https://github.com/sferik/rails_admin/wiki/Custom-action在 RailsAdmin 中创建了一个自定义操作,但我不确定将控制器方法放在自定义操作中的位置,如果我使用表单,会发生什么是调用这些控制器方法的路径吗?

小智 5

以下是我用于 pdf 的自定义操作的示例(此处为项目):

require "rails_admin_pdf/engine"

module RailsAdminPdf
end

require 'rails_admin/config/actions'

module RailsAdmin
  module Config
    module Actions
      class Pdf < Base
        RailsAdmin::Config::Actions.register(self)

        register_instance_option :member do
          true
        end

        register_instance_option :controller do
          Proc.new do
            report = "#{@object.class.to_s.demodulize}Report".constantize.new
            send_data report.to_pdf(@object), :filename => "#{@object.class.to_s.demodulize}_#{@object.id}.pdf", :type => "application/pdf"  
          end
        end
      end
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

因此,为了回答您的问题,控制器方法位于 lib/rails_admin_*custom_action_name*.rb 模块内部。我不确定我是否理解您有关表单提交的问题的第二部分。您可以在此处查看带有表单提交的自定义操作的另一个示例。