有沒有人遇到過這個問題?構建vs新問題
我有意見的集合,我遍歷認爲正常:
<% for comment in @post.comments %>
<%= comment.body %>
<% end %>
但我也有一個表格來添加評論,但似乎如果我使用@ post.comments。在控制器中構建而不是Comment.new,它在循環中創建了一個「註釋」的空白實例。
我寧願使用.build不是.new 有沒有人遇到過這個?有沒有黑客?
謝謝
有沒有人遇到過這個問題?構建vs新問題
我有意見的集合,我遍歷認爲正常:
<% for comment in @post.comments %>
<%= comment.body %>
<% end %>
但我也有一個表格來添加評論,但似乎如果我使用@ post.comments。在控制器中構建而不是Comment.new,它在循環中創建了一個「註釋」的空白實例。
我寧願使用.build不是.new 有沒有人遇到過這個?有沒有黑客?
謝謝
有趣的你提到,我前幾天遇到過這個。
我結束了與Model.new
去,但你也可以嘗試重新加載協會後,你打電話build
。
@post.comments(true)
將重新加載它。 (你也可以寫@post.comments(:force_reload)
以提高可讀性。)
重裝可能會被要求的關聯all
命名範圍的替代,所以@post.comments.all
。
我認爲無論如何都會發出新的查詢,但也許他們會碰到查詢緩存。
@comments = @post.comments
@comment = @post.comments.build
我會這樣做。
不錯,我會給你一個旋轉。我會認爲New和Build足夠接近,它會發生在New上,但我猜不。 – Cameron 2009-05-04 20:46:21