只是更新我的代碼以準備Rails 3,但是我遇到了下面的代碼的一個主要性能問題。爲什麼這個代碼更慢?
舊代碼(好的和快)
@products = Product.all(
:order => 'name',
:include => [:category, :brand, :merchant]
).paginate(:page => params[:page])
新代碼(10×較慢)
@products = Product.order("name")
.includes([:category, :brand, :merchant])
.paginate(:page => params[:page])
我加入了換行符,方便閱讀。
我爲我的DB使用Postgres,也許這是問題?
任何其他技巧,使這個代碼更好將非常感謝!
您是否在生產模式下試過了? – Zepplock 2011-02-23 21:11:03
沒有發展 - 我在語法上犯了什麼錯誤嗎? – Zinc 2011-02-23 21:11:36
開發模式不一定針對速度進行優化。這很可能是一些調試掛鉤或便利功能。如果沒有明顯的緩慢原因,我至少會在開發之外嘗試。 – Chuck 2011-02-23 21:25:16