согласно этому посту на его официальном сайте (мне интересно, почему сопровождающий не включил этот пост импорта в документ ^ _ ^): https://github.com/gregbell/active_admin/pull/623
Step1.при условии, что у вас «generic_items» принадлежит «vendor», а vendor имеет атрибут: name.
# app/models/generic_item.rb
class GenericItem < ActiveRecord::Base
belongs_to :vendor
end
# app/models/vendor.rb
class Vendor < ActiveRecord::Base
has_many :generic_items
# attr_accessor: name
end
Step2.Теперь вы хотите сделать заказ на "vendor.name" на вашей странице "admin / generic_items".
# app/admin/generic_items.rb
ActiveAdmin.register GenericItem do
scope :joined, :default => true do |generic_items|
generic_items.includes [:vendor]
end
index do
# other column definition...
column :vendor_id, :sortable => "vendors.name" do |generic_item|
generic_item.vendor.name if generic_item.vendor
end
end
end
PS, однако фильтр отключится, как только вы сделаете это.теперь.надеюсь, что эта проблема может быть решена как можно скорее.