2012-06-15 56 views
0

有一個我得到但找不到和解決的錯誤。 這是我到目前爲止: https://gist.github.com/2936556這顯示了模型關係和控制器行爲。 https://gist.github.com/2936562這說明該動作觸發該漏洞顯示相關記錄中的一個棘手的錯誤

的錯誤是莫名其妙的消息「forum.lines.notopics」顯示即使論壇確實有主題視圖模板的一部分。我使用調試器gem來跟蹤事情,但這些錯誤似乎是隨機的(當使用調試器時,它在大多數情況下出現,始終如此)。

該日誌顯示沒有查詢加載主題。 使用@ forum.topics而不是@topics根本沒有任何區別。

有沒有人有任何線索?

P.S.如果需要更多信息,請詢問。 Rails 3.2.1,Ruby 1.9.3。

回答

1

唯一的想法是Rails可能實際上並沒有加載@topics,但當您檢查它時<% if @topics.any? %>。 嘗試急於負載主題

@forum = Forum::Forum.includes(:topics).find_by_id(params[:id]) 

(反正你可能需要做的,你真的需要N + 1個查詢?:)

如果它不會幫助,嘗試檢查的主題,而不是算的@topics.any?

<% if @forum.topics.count > 0 %> 
+0

感謝您的想法,這似乎解決的伎倆,但日誌仍然顯示正在加載在一個單獨的查詢的主題。這不是那麼重要,但是如何合併查詢的線索將是最受讚賞的。 – Almaron