我使用https://github.com/sferik/rails_admin/wiki/Custom-action在RailsAdmin中创建了一个自定义操作,但我不确定将控制器方法放在自定义操作中的哪个位置,如果我使用表单调用这些控制器方法的路径是什么?
答案 0 :(得分:4)
以下是我用于pdf(项目here)的自定义操作示例:
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
因此,为了回答您的问题,控制器方法进入lib / rails_admin_ * custom_action_name * .rb模块。我不确定我理解关于表单提交的问题的第二部分。您可以查看表单提交here的自定义操作的另一个示例。