Ruby on rails 在ActiveAdmin索引页的底部插入自定义元素
我想在ActiveAdmin索引页的底部插入一个自定义元素。例如,有一个Ruby on rails 在ActiveAdmin索引页的底部插入自定义元素,ruby-on-rails,activeadmin,Ruby On Rails,Activeadmin,我想在ActiveAdmin索引页的底部插入一个自定义元素。例如,有一个活动模型,在ActiveAdmin活动索引页面中,我希望默认的索引表后跟我的自定义元素(一个名为活动_自定义_元素)的部分)。 我尝试了以下代码: index do selectable_column column :id column :name column :advertiser column :duration column :paused column :in
活动
模型,在ActiveAdmin活动索引页面中,我希望默认的索引表后跟我的自定义元素(一个名为活动_自定义_元素
)的部分)。
我尝试了以下代码:
index do
selectable_column
column :id
column :name
column :advertiser
column :duration
column :paused
column :in_preparation
panel 'A custom panel' do
render partial: 'campaigns_custom_element'
end
end
问题在于ActiveAdmin总是将索引表作为最后一个元素:
相反,我希望的布局是索引表,后跟我的自定义元素:
有一种简单而干净的方法可以做到这一点,而无需创建整个自定义索引页?如果依赖javascript不会困扰您,这里有一点概念证明:将面板像这样用div包装:
div(id: 'get_lower') do
panel 'A custom panel' do
render partial: 'campaigns_custom_element'
end
end
然后在app/assets/javascripts/active_admin.js的末尾添加此代码段
;(function($) {
$(document).ready(function() {
$("#get_lower").insertAfter(".index_table");
});
})(jQuery);
谢谢,这种方法很完美。还可以将JS片段直接添加到包含部分代码的
html.erb
文件中的script
标记中。