目前我使用:渲染:收集包裝每個項目?
<% @items.each do |item| %>
<li class="list-item">
<%= render :partial => '/widgets/vertical_widget',
:object => item %>
</li>
<% end %>
呈現在頁面上大約20個項目(有也是同一頁面上的其他部件的另外20)。
當我查看我的服務器日誌時,它顯示每個窗口小部件呈現大約400毫秒,總計大約爲20k毫秒的頁面。從我讀過的使用:colletion而不是循環with:object應該有助於改進這些時間,但是我不確定如果我使用:collection,如何將小部件的每個實例包裝在LI中。從來沒有放置在網站上使用的小部件是在列表中,因此將小部件代碼包含在LI中是沒有意義的。
我可以將小部件代碼直接包含在循環中而不是部分中,但是我不想在多個地方進行代碼更新。
任何其他想法,以提高性能將不勝感激!
我曾經希望得到局部以外的東西,但我認爲這仍然可以解決我的問題。下班回家時我會試一試! – 2011-06-01 20:27:18
那麼,你可以*使用間隔模板(':spacer =>'some_spacer_template_file'')來渲染「open」標籤(模板應該是'
您的代碼運行良好,不幸的是我的緩慢問題依然存在。不管怎麼說,還是要謝謝你! – 2011-06-02 04:17:12