2014-03-24 174 views
1

在Rails應用程序中,ActiveAdmin非常慢。我真的需要提高性能,我需要保持過濾器。提高ActiveAdmin的速度

我認爲最耗費的東西是過濾器和下拉框。我看到兩個選項可以應用,緩存和包含。所以,我有兩個問題:

  1. 是否有可能應用連接或包括當活動管理員查找數據?我需要在過濾器和關聯上應用範圍。
  2. 是否有可能應用緩存過濾器和索引?

這是一個關聯的例子。在模型上,我有這個:

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 

每次顯示名稱時,它都會執行查詢。這很長。

一個額外的問題:是否有其他解決方案來提高性能?

回答

1

我嘗試了許多優化,但它不是很快,因爲我想。我認爲Activeadmin很適合快速完成管理部分,但最好在變得更復雜時使用其他功能。我試過Smart Listing。它運作良好,而且更具可定製性。

0

我通過向數據庫添加索引解決了同樣的問題。嘗試一樣。