6
我正在使用ActiveAdmin作爲其管理後端的項目。ActiveAdmin自動加載完整關聯表
我有兩個模型,一個書模型has_many產品。當我嘗試訪問ActiveAdmin中的產品索引視圖時,它似乎試圖將全書表加載到內存中(我的數據庫中有大約150萬本書)。 CPU使用率高達100%,內存使用率達到千兆字節。
打開MySQL的記錄證實,這是當這種觀點被稱爲發生了什麼:
17 Query SELECT `books`.* FROM `books`
至於我可以告訴任何試圖加載之前的產品出現這種情況。
爲了弄清楚這個問題,我扯下了模型到他們的基本框架:
class Product < ActiveRecord::Base
belongs_to :book
end
class Book < ActiveRecord::Base
has_many :products
end
我也是AA定義減少到其最基本的形式:
ActiveAdmin.register Product do
end
這是正常的ActiveAdmin ?它看起來不像可取的行爲。
剛把同樣的問題,成千上萬的記錄中的10秒被拉上一個愚蠢的下拉-_-有點煩人,我不得不手動重新輸入其餘的過濾器,它顯然是所有的習慣或沒有習慣,但無論 - 擊敗後端! –