显示页面上的活动管理过滤器

时间:2015-06-09 20:31:23

标签: ruby-on-rails ruby activeadmin

我的应用程序有三个我关注的模型:

页:

class Page < ActiveRecord::Base
  has_many :page_translations
  has_many :translations, through: :page_translations, :class_name => Translation.name

  accepts_nested_attributes_for :page_translations, :allow_destroy => true
end

PageTranslation:

class PageTranslation < ActiveRecord::Base
  belongs_to :page
  belongs_to :translation

end

和翻译:

class Translation < ActiveRecord::Base
  validates_presence_of :locale, :key
  has_many :pages, through: :page_translations
  has_many :page_translations

  accepts_nested_attributes_for :page_translations, :allow_destroy => true
end

当用户访问页面索引时,会向他们提供指向该页面的show动作的链接。

index do
    column :slug do |page|
      link_to(page.slug, admin_page_path(page))
    end
  end

在节目页面上,我列出了与该页面相关的所有翻译:

show title: :slug do |page|
    panel "Translations" do
      table_for(page.translations, sortable: true) do
        column :value do |translation|
          link_to(translation.value, edit_admin_translation_path(translation))
        end.join(', ').html_safe
        column :key
        column :locale
      end
    end
  end

在页面模型的show动作中,我想添加一个过滤器,以便用户可以按区域设置或值进行排序。我是活跃管理员的新手(因为我相信你可以从我的臭代码中辨别出来)并且我已经在这个问题上挣扎了一段时间。任何帮助是极大的赞赏。

0 个答案:

没有答案