提高ActiveAdmin的速度

时间:2014-03-24 22:11:27

标签: ruby-on-rails ruby caching activeadmin

在rails应用程序中,ActiveAdmin非常慢。我真的需要提升性能,我需要保留过滤器。

我认为最耗费的东西是过滤器和下拉框。我看到我可以应用的两个选项,缓存和包含。所以,我有两个问题:

  1. 当活动管理员查找数据时是否可以应用联接或包含?我需要在过滤器和关联上应用范围。
  2. 是否可以在过滤器和索引上应用缓存?
  3. 这是关联的一个例子。在模型上,我有这个:

    class ProviderService < ActiveRecord::Base
      belongs_to :service
      belongs_to :provider_profile, foreign_key: :provider_profile_id
    
      def display_name
        [service.title, provider_profile.display_name].join(" - ")
      end
    end
    

    每次显示名称时,都会进行查询。这很长。

    一个额外的问题:是否有其他解决方案来提升性能?

2 个答案:

答案 0 :(得分:1)

我尝试了许多优化,但它并不像我想的那么快。我认为Activeadmin可以快速完成管理部分,但是当它变得更复杂时,最好使用其他东西。我试过了Smart Listing。它效果很好,而且可以更加自定义。

答案 1 :(得分:0)

我通过在数据库中添加索引来解决同样的问题。尝试相同。