5

考虑以下 ActiveAdmin 页面:

ActiveAdmin.register_page "Import" do
    content do
        form :action => some_path, :method => :post do |f|
            f.input :name => :table, :collection => { "Display" => "id" }
        end
    end
end

在 ActiveAdmin 资源中的任何地方使用此代码都可以正常工作,使用 FormBuilder 创建 Formtastic 表单。但是,当使用 AA 的 register_page 方法并在该部分中放置一个表单时content,它似乎并没有像希望的那样工作。我错过了什么,或者这可能是被忽视的东西吗?我可能会以部分形式创建表单,而不是使用 AA 的 DSL,但将其保留在 AA 资源中会更好。

有人知道为什么它不会很好玩吗?

4

1 回答 1

1

其实我以前也注意到了。我的问题是,当我转到我自己的自定义页面之一时,Cancan 似乎无法正常工作了……不管我设置的管理员权限。

但是,如果您查看日志,您会注意到自定义页面呈现以下内容:

app/views/active_admin/page/index.html.arb

而“正常”资源页面呈现以下内容

app/views/active_admin/resource/index.html.arb

所以我认为任何与 ActiveAdmin 和 ActiveRecord 模型相关的助手/方法都不能在自定义页面中工作。似乎它们仅在将模板呈现在下时才有效/resource/*

就像你说的......我通过创建自己的部分来解决这个问题!

于 2013-11-20T14:46:27.017 回答